Sat, 08 Apr 2017 12:43:36 +0200 tests: fix directory names in exchange-D3 test stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 08 Apr 2017 12:43:36 +0200] rev 2266
tests: fix directory names in exchange-D3 test The test is based on another one and the directory name had not been updated.
Sat, 01 Apr 2017 12:45:18 +0200 merge back with default
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 01 Apr 2017 12:45:18 +0200] rev 2265
merge back with default
Fri, 31 Mar 2017 15:51:58 +0200 Added tag 6.0.0 for changeset 165ad227993d stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 31 Mar 2017 15:51:58 +0200] rev 2264
Added tag 6.0.0 for changeset 165ad227993d
Fri, 31 Mar 2017 15:51:27 +0200 packaging: prepare version 6.0.0 stable 6.0.0
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 31 Mar 2017 15:51:27 +0200] rev 2263
packaging: prepare version 6.0.0
Fri, 31 Mar 2017 15:47:31 +0200 merged with future 6.0 mercurial-3.8
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 31 Mar 2017 15:47:31 +0200] rev 2262
merged with future 6.0 No output changed.
Fri, 31 Mar 2017 15:44:10 +0200 test-compat-hg-3.9: merge with future 6.0 mercurial-3.9
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 31 Mar 2017 15:44:10 +0200] rev 2261
test-compat-hg-3.9: merge with future 6.0
Fri, 31 Mar 2017 15:39:20 +0200 merge with future 6.0.0 mercurial-4.0
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 31 Mar 2017 15:39:20 +0200] rev 2260
merge with future 6.0.0
Fri, 31 Mar 2017 15:33:59 +0200 merge with default stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 31 Mar 2017 15:33:59 +0200] rev 2259
merge with default We are getting close to cutting a 6.0.0
Fri, 31 Mar 2017 14:50:50 +0200 readme: mention the fix for issue4354
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 31 Mar 2017 14:50:50 +0200] rev 2258
readme: mention the fix for issue4354
Fri, 31 Mar 2017 15:02:39 +0200 checkheads: add a small debug message in case were we give up fast
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 31 Mar 2017 15:02:39 +0200] rev 2257
checkheads: add a small debug message in case were we give up fast When node is unknown we assume it will stay. Yet, we might have markers to it that are going to be pushed. However, we do not have branch (ancestors) information unless we are very lucky an all of them are pruned. So for now we do not do anything assuming this will be rare. We still add a small debug message to help detecting such situation in the future.
Fri, 31 Mar 2017 13:46:51 +0200 checkheahds: switch algorithm to use pushed markers instead
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 31 Mar 2017 13:46:51 +0200] rev 2256
checkheahds: switch algorithm to use pushed markers instead We now checks if markers involved in the push are relevant to nodes in the branch we try to replace. The approach is simpler and more robust. A test showing the limitation of the previous approach is added.
Fri, 31 Mar 2017 13:47:14 +0200 checkheads: add test where the rewrite of the other branch is not direct
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 31 Mar 2017 13:47:14 +0200] rev 2255
checkheads: add test where the rewrite of the other branch is not direct This will help testing that our logic is properly transitive.
Fri, 31 Mar 2017 13:45:26 +0200 check-heads: add tests about old heads indirectly pruned
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 31 Mar 2017 13:45:26 +0200] rev 2254
check-heads: add tests about old heads indirectly pruned
Wed, 29 Mar 2017 17:50:33 +0200 checkheads: add more complexe case where a branch is split on multiple ones
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 29 Mar 2017 17:50:33 +0200] rev 2253
checkheads: add more complexe case where a branch is split on multiple ones We extend case A-6 and A-7 with partial counterpart. These case are interesting because some of the partial pushing will (rightfully) works and some other won't.
Wed, 29 Mar 2017 17:35:55 +0200 checkheads: add a test of partially pushing a branch spread on multiple other
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 29 Mar 2017 17:35:55 +0200] rev 2252
checkheads: add a test of partially pushing a branch spread on multiple other If a branch is fully obsolete but is result are spread on multiple branch, pushing only one of them should detect we create new branches.
Fri, 31 Mar 2017 13:42:28 +0200 checkheads-tests: add missing parents recording for prune markers
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 31 Mar 2017 13:42:28 +0200] rev 2251
checkheads-tests: add missing parents recording for prune markers It is a bit too easy to forget about theses :/ If they are missing, the markers are not going to be exchanged on push.
Wed, 29 Mar 2017 14:02:46 +0200 checkheads: add some extra tests about "partial push"
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 29 Mar 2017 14:02:46 +0200] rev 2250
checkheads: add some extra tests about "partial push" This adds a couple of test that checks that the head replacement code is properly ignored replacement not relevant to the push.
Wed, 29 Mar 2017 15:48:27 +0200 checkheads: handle partial obsolescence
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 29 Mar 2017 15:48:27 +0200] rev 2249
checkheads: handle partial obsolescence We now properly detects situations were only parts of the remote branch is obsoleted. To do so, we process children in the branch recursively to see if they will be obsolete. The current code has some trouble when the remote branch in unknown locally, or when the prune happened on a successors that is not relevant to the push. These case will be handled later. The processing code is becoming more and more complex, a lighter approach would be to check for the obsolescence markers that are relevant to the pushed set, but I prefer to stick with the current approach until more test cases are written.
Wed, 29 Mar 2017 16:41:42 +0200 test: force a push in inhibit's test
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 29 Mar 2017 16:41:42 +0200] rev 2248
test: force a push in inhibit's test Our checkheads detection code is becoming better and will prevent that push. As we do not care about this for inhibit, we simply force the push.
Tue, 21 Mar 2017 12:30:53 +0100 checkheads: basic handling of pruned heads (and associated tests)
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 21 Mar 2017 12:30:53 +0100] rev 2247
checkheads: basic handling of pruned heads (and associated tests) We now detect that heads was pruned and stop warning about it. Note that this has the same shortcoming as the existing code and only looks at the heads.
Wed, 29 Mar 2017 16:28:15 +0200 checkheads: give up on processing locally unknown changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 29 Mar 2017 16:28:15 +0200] rev 2246
checkheads: give up on processing locally unknown changeset There are too many issue with locally unknown changesets, we ignore them for now while we get the core feature of the detection working.
Tue, 21 Mar 2017 23:44:30 +0100 checkheads: import our own copy of the checkheads code
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 21 Mar 2017 23:44:30 +0100] rev 2245
checkheads: import our own copy of the checkheads code I expect enough change and experimental will be made that is it worthwhile having them done in evolution close to the rest of the exchange tests make sense.
Sun, 26 Mar 2017 04:59:36 +0200 compat: work around some filecache bug in 3.8
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 26 Mar 2017 04:59:36 +0200] rev 2244
compat: work around some filecache bug in 3.8 We are still compatible with this version.
Fri, 24 Mar 2017 18:21:48 +0100 obshashrange: have an half descent wireprotocol command
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 18:21:48 +0100] rev 2243
obshashrange: have an half descent wireprotocol command The previous implementation was extremely hacky. The new version is based on the other discovery function and work!
Fri, 24 Mar 2017 18:37:03 +0100 obshashrange: improve message issued during discovery
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 18:37:03 +0100] rev 2242
obshashrange: improve message issued during discovery This is a minor new message that help to understand what is going on.
Fri, 24 Mar 2017 18:28:01 +0100 obshashrange: introduce basic sqlite caching
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 18:28:01 +0100] rev 2241
obshashrange: introduce basic sqlite caching Same as for stablerange, this is far from perfect but already a win. The cache is currently extremely volatile, but that will still be a win when doing multiple consecutive request during discovery. Better cache invalidation will happens "in the future".
Fri, 24 Mar 2017 15:57:54 +0100 stablerange: warm cache before using it server side
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 15:57:54 +0100] rev 2240
stablerange: warm cache before using it server side We make sure the cache is fully up to date before starting to use it. Updating all value is more efficient and this give us a single point where we update and write on disk. Hopefully the cache have been kept up to date as we go anyway.
Fri, 24 Mar 2017 15:57:08 +0100 stablerange: warm cache before using it in findrangemissing
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 15:57:08 +0100] rev 2239
stablerange: warm cache before using it in findrangemissing We make sure the cache is fully up to date before starting to use it. Updating all value is more efficient and this give us a single point where we update and write on disk. Hopefully the cache have been kept up to date as we go anyway.
Fri, 24 Mar 2017 15:56:57 +0100 stablerange: warm cache on transaction (if obshashrange is enabled)
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 15:56:57 +0100] rev 2238
stablerange: warm cache on transaction (if obshashrange is enabled) If we plan to use it (obshashrange is enabled) we better keep it up to date. If a transaction adds node, we update the cache (this should also update the on disk version).
Fri, 24 Mar 2017 16:05:28 +0100 stablerange: introduce ondisk caching through sqlite
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 16:05:28 +0100] rev 2237
stablerange: introduce ondisk caching through sqlite There is many short cut and limitation with this first version of a cache but this allow use to envision some actual usage of the stablerange thingy so let us got for it.
Fri, 24 Mar 2017 18:41:55 +0100 stablerange: drop the cache on 'destroyed'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 18:41:55 +0100] rev 2236
stablerange: drop the cache on 'destroyed' if the repository have been strip, the cache is not usable as is. We could be smarter in the invalidation but that is a prototype anyway. G: changed hgext3rd/evolve/stablerange.py
Fri, 24 Mar 2017 11:27:56 +0100 stablerange: support loading the cache iteratively
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 11:27:56 +0100] rev 2235
stablerange: support loading the cache iteratively We record how far we loaded so that we can resume from this point.
Fri, 24 Mar 2017 11:20:42 +0100 stablerange: add some basic documentation about the cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 11:20:42 +0100] rev 2234
stablerange: add some basic documentation about the cache
Fri, 24 Mar 2017 11:18:01 +0100 stablerange: warmup all upto a revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 11:18:01 +0100] rev 2233
stablerange: warmup all upto a revision Let us start doing more systemic warming of the cache before we start writing things out. This prepare on disk caching.
Fri, 24 Mar 2017 10:22:38 +0100 debugstablerange: add a --verify flag to the command
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 10:22:38 +0100] rev 2232
debugstablerange: add a --verify flag to the command This should help us finding bugs.
Fri, 24 Mar 2017 10:12:02 +0100 stablerange: add a proper debugstablerange commands
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 10:12:02 +0100] rev 2231
stablerange: add a proper debugstablerange commands This commands allows to inspect the standard stable range of a range. That should come handy.
Fri, 24 Mar 2017 09:49:03 +0100 debugobshashrange: add a --subranges option
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 09:49:03 +0100] rev 2230
debugobshashrange: add a --subranges option We stop displaying -everything- by default, since is is usually very large. This will help getting better timing when measuring cache effect too, since we won't need to dig out deep cache value that real life usage would not touch.
Fri, 24 Mar 2017 09:42:39 +0100 debug: rename 'debugstablerange' to 'debugobshashrange'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 09:42:39 +0100] rev 2229
debug: rename 'debugstablerange' to 'debugobshashrange' The command is more about the 'obshashrange' computation.
Fri, 24 Mar 2017 09:40:50 +0100 debugstablerange: improve output spacing
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 09:40:50 +0100] rev 2228
debugstablerange: improve output spacing On repo with a descent amount of changeset the number where overflowing in all directions. We give use more room now.
Fri, 24 Mar 2017 09:21:05 +0100 subranges: add a utility function to set the cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 09:21:05 +0100] rev 2227
subranges: add a utility function to set the cache This is preparing on disk persistence for the value in this cache.
Fri, 24 Mar 2017 09:18:50 +0100 subranges: add a utility function to access the cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 09:18:50 +0100] rev 2226
subranges: add a utility function to access the cache This is preparing on disk persistence for the value in this cache.
Fri, 24 Mar 2017 09:15:18 +0100 depth: add a utility function to set the cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 09:15:18 +0100] rev 2225
depth: add a utility function to set the cache This is preparing on disk persistence for the value in this cache.
Fri, 24 Mar 2017 09:01:25 +0100 depth: add a utility function to access the cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 09:01:25 +0100] rev 2224
depth: add a utility function to access the cache This is preparing on disk persistence for the value in this cache.
Fri, 24 Mar 2017 03:20:29 +0100 stablerange: add warming of the subrange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 03:20:29 +0100] rev 2223
stablerange: add warming of the subrange Note that this means we build standard stable subrange for all changesets in the repository this is significantly more than what we were computing before and result is significantly more ranges being computed.
Fri, 24 Mar 2017 11:04:38 +0100 stablerange: fix merge slicing when range has multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 11:04:38 +0100] rev 2222
stablerange: fix merge slicing when range has multiple roots The first element in the bottom set is not necessarly the one with the lowest revision. We now properly compute and use the minimum value.
Fri, 24 Mar 2017 09:04:34 +0100 stablerange: small style fix
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 09:04:34 +0100] rev 2221
stablerange: small style fix
Fri, 24 Mar 2017 08:16:00 +0100 merge-slicing: introduce and use "inheritance point" for merge
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 08:16:00 +0100] rev 2220
merge-slicing: introduce and use "inheritance point" for merge The first part of the stable sorted list of revision of a merge will shared with the one of others. This means we can reuse subranges computed from that point to compute some of the subranges from the merge. That point is latest point in the stable sorted list where the depth of the revisions match its index (that means all revision earlier in the stable sorted list are its ancestors, no dangling unrelated branches exists). This is a bit expensive to find since we have to walk all the revision, but being able to reuse subranges in all case (not just regular changesets) provide a massive speedup so the cost is worth it.
Fri, 24 Mar 2017 08:31:10 +0100 stablerange: rearrange the code picking subrange to warm
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 08:31:10 +0100] rev 2219
stablerange: rearrange the code picking subrange to warm Same logic, as the previous changesets, we prepare the code before adding merge support.
Fri, 24 Mar 2017 08:20:36 +0100 stablerange: rearrange the reusing logic to prepare to merge
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 08:20:36 +0100] rev 2218
stablerange: rearrange the reusing logic to prepare to merge We'll soon be able to reuse some lower range when dealing with merge too. So we prepare the code for this in advance for clarity.
Fri, 24 Mar 2017 06:24:02 +0100 merge-slicing: explain an alternative implementation in a comments
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 06:24:02 +0100] rev 2217
merge-slicing: explain an alternative implementation in a comments It has a better time complexity so a C implementation would likely out perform the current implementation
Fri, 24 Mar 2017 06:36:12 +0100 merge-slicing: use reachable roots to filter the various branches
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 06:36:12 +0100] rev 2216
merge-slicing: use reachable roots to filter the various branches Reachable roots does what we want and have a quite fast C implementation.
Fri, 24 Mar 2017 05:51:20 +0100 merge-slicing: simplify various aspect of the code
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 05:51:20 +0100] rev 2215
merge-slicing: simplify various aspect of the code Especially the case were the bottom have single heads is not more efficiently handled.
Thu, 23 Mar 2017 14:17:15 +0100 stablerange: soon it will not provide any benefit and it gets in the way
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 23 Mar 2017 14:17:15 +0100] rev 2214
stablerange: soon it will not provide any benefit and it gets in the way This was a bit strange and memory consuming anyway.
Fri, 24 Mar 2017 06:31:32 +0100 revsfromrange: reuse information from the stablesort
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 06:31:32 +0100] rev 2213
revsfromrange: reuse information from the stablesort We collaborate with the stablesort to store the order that led to a merge. That way, when we needs to retrieve revision from that merge we can reuse that order. We might need to filter to only retains ancestors of the merge we care about but skipping the stablesort safe a large amount of time.
Fri, 24 Mar 2017 03:22:56 +0100 stablesort: allow a callback to be triggered on merge
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 03:22:56 +0100] rev 2212
stablesort: allow a callback to be triggered on merge Storing some information as we sort is going to be useful to avoid performing multiple sort while computing the stablerange.
Fri, 24 Mar 2017 03:33:36 +0100 minor simplification around rangelength
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 03:33:36 +0100] rev 2211
minor simplification around rangelength
Fri, 24 Mar 2017 03:30:14 +0100 more explicite name in revsfromrange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 03:30:14 +0100] rev 2210
more explicite name in revsfromrange
Fri, 24 Mar 2017 05:15:25 +0100 stablerange: cache parents
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 24 Mar 2017 05:15:25 +0100] rev 2209
stablerange: cache parents We happens to be doing and awful amount of parent call. We cache them locally for efficiency.
Thu, 23 Mar 2017 12:53:39 +0100 merge-slicing: avoid doing the same work twice
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 23 Mar 2017 12:53:39 +0100] rev 2208
merge-slicing: avoid doing the same work twice We have already computed the list of revision in that bottom slice as 'hrevs' so we do not need to compute it a second time.
Thu, 23 Mar 2017 14:16:43 +0100 stablerange: fix a bug when a top slice ended on a merge
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 23 Mar 2017 14:16:43 +0100] rev 2207
stablerange: fix a bug when a top slice ended on a merge Our "smart" detection of merge was buggy if the top slice ended on a merge. This is not fixed and tested.
Thu, 23 Mar 2017 10:49:03 +0100 slicesrangeat: stop double setting the revsinranges cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 23 Mar 2017 10:49:03 +0100] rev 2206
slicesrangeat: stop double setting the revsinranges cache The cache should have already been filled by the logic warming the cache for the parent.
Thu, 23 Mar 2017 10:44:12 +0100 subranges: remove the recursivity of the call to isubranges(parentrange)
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 23 Mar 2017 10:44:12 +0100] rev 2205
subranges: remove the recursivity of the call to isubranges(parentrange) We add some logic to ensure we'll have hot cache for the parent ranges when that matters, the cache is filled from ancestors to descendant to ensure this. The range are still 'created from descendant to ancestors to fill the revsfromrange cache since it important.
Thu, 23 Mar 2017 10:19:59 +0100 subranges: detach cache logic from computation logic
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 23 Mar 2017 10:19:59 +0100] rev 2204
subranges: detach cache logic from computation logic Having both the logic around cache checking and setting makes is a bit harder to follow. In addition, this allow to gather the computation logic next to the other related function.
Thu, 23 Mar 2017 10:07:21 +0100 findmissingrange: properly queue new subrange for slicing
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 23 Mar 2017 10:07:21 +0100] rev 2203
findmissingrange: properly queue new subrange for slicing The previous code was buggy and used the wrong variable leading to no extra slicing being performed to file the sample at the requested size.
Thu, 23 Mar 2017 10:06:20 +0100 findmissingrange: fix reversed value in debug output
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 23 Mar 2017 10:06:20 +0100] rev 2202
findmissingrange: fix reversed value in debug output "oops"
Wed, 22 Mar 2017 22:05:30 +0100 stablecache: warmup on unfiltered repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 22:05:30 +0100] rev 2201
stablecache: warmup on unfiltered repository We only looks at ancestors revision so filtering will not have any effect. This reduce overhead from the filtering.
Wed, 22 Mar 2017 21:11:35 +0100 stablerange: rename the class
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 21:11:35 +0100] rev 2200
stablerange: rename the class This is much more than just a cache now.
Thu, 23 Mar 2017 09:40:04 +0100 stablerange: do not inherit from dict
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 23 Mar 2017 09:40:04 +0100] rev 2199
stablerange: do not inherit from dict This seems like and old cargo cult that when unnoticed.
Wed, 22 Mar 2017 21:10:01 +0100 stablerange: move a utility function around
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 21:10:01 +0100] rev 2198
stablerange: move a utility function around It make more sense to have this small function earlier in the series
Wed, 22 Mar 2017 21:09:28 +0100 stablerange: remove the now unused individual range class
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 21:09:28 +0100] rev 2197
stablerange: remove the now unused individual range class That class is now longer necessary, we dropped its usage for performance reason.
Wed, 22 Mar 2017 21:08:58 +0100 stablerange: directly use tuple to refer to a stable range
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 21:08:58 +0100] rev 2196
stablerange: directly use tuple to refer to a stable range Now that all advance logic lives in the unified class we no longer needs the individual class. Creating and operating on this cache introduce a significant overhead that we can not stop having. From now on, a range a is pair tuple '(headrev, index)'. Long live the tuple.
Wed, 22 Mar 2017 21:28:18 +0100 obshash: properly cache obshash value
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 21:28:18 +0100] rev 2195
obshash: properly cache obshash value The code was buggy and only cached non-nullid/non-inherited value. This was previous hidden because we were using a 'propertycache' to cache the value on the range object. This fixes it and restore a lot of performance.
Wed, 22 Mar 2017 20:59:42 +0100 stablerange: directly use 'self' when possible
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 20:59:42 +0100] rev 2194
stablerange: directly use 'self' when possible Code movement introduced multiple silly case were we where accessing 'self' though 'repo.stablerange' for no good reasons.
Wed, 22 Mar 2017 20:56:17 +0100 revsfromrange: set the cache for the multiple bottom ranges in merge slicing
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 20:56:17 +0100] rev 2193
revsfromrange: set the cache for the multiple bottom ranges in merge slicing We no longer rely on the object magic here.
Wed, 22 Mar 2017 20:55:43 +0100 revsfromrange: set the cache for the single bottom range in merge slicing
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 20:55:43 +0100] rev 2192
revsfromrange: set the cache for the single bottom range in merge slicing We no longer rely on the object magic here.
Wed, 22 Mar 2017 20:55:23 +0100 revsfromrange: set the cache for the top range in merge slicing
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 20:55:23 +0100] rev 2191
revsfromrange: set the cache for the top range in merge slicing We no longer rely on the object magic here.
Wed, 22 Mar 2017 20:44:29 +0100 revsfromrange: remove reference to '_revs' in merge slicing
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 20:44:29 +0100] rev 2190
revsfromrange: remove reference to '_revs' in merge slicing Given '_revs' is a property from the cache, we use the official method of the object we are on instead. That method should be using the same cache than the property if available.
Wed, 22 Mar 2017 20:37:27 +0100 revsfromcache: update cache for the top slice if possible
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 20:37:27 +0100] rev 2189
revsfromcache: update cache for the top slice if possible Same logic, we update the cache if have the data.
Wed, 22 Mar 2017 20:37:03 +0100 revsfromrange: skip setting the cache for length-1 top entry
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 20:37:03 +0100] rev 2188
revsfromrange: skip setting the cache for length-1 top entry The content of the range is trivial to compute.
Wed, 22 Mar 2017 20:36:19 +0100 revsfromrange: update cache for parentrange directly in the code
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 20:36:19 +0100] rev 2187
revsfromrange: update cache for parentrange directly in the code We update it where it matters if we detect that we have the data.
Wed, 22 Mar 2017 20:34:07 +0100 revsfromramge: hard code the single changeset range case
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 20:34:07 +0100] rev 2186
revsfromramge: hard code the single changeset range case That case is trivial and triggering and full stable sort for it seems a bit silly.
Wed, 22 Mar 2017 20:18:01 +0100 stablerange: introduce caching for the full revision in a set
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 20:18:01 +0100] rev 2185
stablerange: introduce caching for the full revision in a set Such cache proved handy in the "per-range" class so we carry it along to the unified class. cf documentation for details.
Wed, 22 Mar 2017 20:11:19 +0100 stablerange: add a cache for stablesort ordering
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 20:11:19 +0100] rev 2184
stablerange: add a cache for stablesort ordering This will be very handy for merge, cf inline documentation for details.
Wed, 22 Mar 2017 20:05:21 +0100 stablerange: move revs computation within the main class
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 20:05:21 +0100] rev 2183
stablerange: move revs computation within the main class We still need to compute the revision withing a range when we slice a merge. This is the last large logic that remains in the individual class and we migrate is on the main class.
Wed, 22 Mar 2017 19:42:37 +0100 stablerange: minor method reorders on the main class
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 19:42:37 +0100] rev 2182
stablerange: minor method reorders on the main class We put the public method first for clarify.
Wed, 22 Mar 2017 19:30:23 +0100 stablerange: drop "key" and "id" logic form the class
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 19:30:23 +0100] rev 2181
stablerange: drop "key" and "id" logic form the class We can restrict to the bare minimun for equality and hashing now.
Wed, 22 Mar 2017 19:28:14 +0100 stablerange: drop length from the class
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 19:28:14 +0100] rev 2180
stablerange: drop length from the class There is not remaining user.
Wed, 22 Mar 2017 19:26:40 +0100 stablerange: drop _depth
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 19:26:40 +0100] rev 2179
stablerange: drop _depth Nothing uses it anymore.
Wed, 22 Mar 2017 19:25:12 +0100 stablerange: drop __repr__
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 19:25:12 +0100] rev 2178
stablerange: drop __repr__ IT was used for debug and the class is on it way out.
Wed, 22 Mar 2017 19:23:32 +0100 stablerange: drop the subranges method on the small class
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 19:23:32 +0100] rev 2177
stablerange: drop the subranges method on the small class Nobody use it anymore.
Wed, 22 Mar 2017 19:21:41 +0100 stablerange: use subranges from the main class in subrangesclosure
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 19:21:41 +0100] rev 2176
stablerange: use subranges from the main class in subrangesclosure This is the last method used on the class.
Wed, 22 Mar 2017 19:21:18 +0100 stablerange: use subranges from the main class in _obshashrange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 19:21:18 +0100] rev 2175
stablerange: use subranges from the main class in _obshashrange This is the last method used on the class.
Wed, 22 Mar 2017 19:20:30 +0100 stablerange: use subranges from the main class in findrangemissing
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 19:20:30 +0100] rev 2174
stablerange: use subranges from the main class in findrangemissing This is the last method used on the class.
Wed, 22 Mar 2017 18:55:26 +0100 stablerange: make sure nobody use '.depth' anymore
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 18:55:26 +0100] rev 2173
stablerange: make sure nobody use '.depth' anymore
Wed, 22 Mar 2017 18:54:45 +0100 stablerange: use depthrevs in range slicing
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 18:54:45 +0100] rev 2172
stablerange: use depthrevs in range slicing We stop using the property from the class to get us closer to tuple.
Wed, 22 Mar 2017 18:53:25 +0100 stablerange: use depthrevs in debugstablerange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 18:53:25 +0100] rev 2171
stablerange: use depthrevs in debugstablerange We stop using the property from the class to get us closer to tuple.
Wed, 22 Mar 2017 18:41:26 +0100 stablerange: use rangelength inside the class itself
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 18:41:26 +0100] rev 2170
stablerange: use rangelength inside the class itself We stop using the building '__len__' this get use closer to be able to use a tuple.
Wed, 22 Mar 2017 18:40:54 +0100 stablerange: use rangelength in '_slicesatrange'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 18:40:54 +0100] rev 2169
stablerange: use rangelength in '_slicesatrange' We stop using the building '__len__' this get use closer to be able to use a tuple.
Wed, 22 Mar 2017 18:40:19 +0100 stablerange: use rangelength in '_slicepoint'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 18:40:19 +0100] rev 2168
stablerange: use rangelength in '_slicepoint' We stop using the building '__len__' this get use closer to be able to use a tuple.
Wed, 22 Mar 2017 18:39:47 +0100 stablerange: use rangelength in subrangesclosure
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 18:39:47 +0100] rev 2167
stablerange: use rangelength in subrangesclosure We stop using the building '__len__' this get use closer to be able to use a tuple.
Wed, 22 Mar 2017 18:37:11 +0100 stablerange: use rangelength in _obshashrange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 18:37:11 +0100] rev 2166
stablerange: use rangelength in _obshashrange We stop using the building '__len__' this get use closer to be able to use a tuple.
Wed, 22 Mar 2017 18:36:37 +0100 stablerange: use rangelength in debugstablerange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 18:36:37 +0100] rev 2165
stablerange: use rangelength in debugstablerange We stop using the building '__len__' this get use closer to be able to use a tuple.
Wed, 22 Mar 2017 18:35:05 +0100 stablerange: use rangelength in findmissingrange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 18:35:05 +0100] rev 2164
stablerange: use rangelength in findmissingrange We stop using the building '__len__' this get use closer to be able to use a tuple.
Wed, 22 Mar 2017 17:59:21 +0100 stablerange: make sure nobody use '.index' anymore
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:59:21 +0100] rev 2163
stablerange: make sure nobody use '.index' anymore We rename the attribute for good measure.
Wed, 22 Mar 2017 17:57:04 +0100 stablerange: stop using '.index' inside the class itself
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:57:04 +0100] rev 2162
stablerange: stop using '.index' inside the class itself We now access '[1]' as we'll do with the future tuple.
Wed, 22 Mar 2017 17:55:57 +0100 stablerange: stop using '.index' in '_slicesrangeat'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:55:57 +0100] rev 2161
stablerange: stop using '.index' in '_slicesrangeat' We now access '[1]' as we'll do with the future tuple.
Wed, 22 Mar 2017 17:53:39 +0100 stablerange: stop using '.index' in '_slicepoint'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:53:39 +0100] rev 2160
stablerange: stop using '.index' in '_slicepoint' We now access '[1]' as we'll do with the future tuple.
Wed, 22 Mar 2017 17:52:53 +0100 stablerange: stop using '.index' in 'rangelength'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:52:53 +0100] rev 2159
stablerange: stop using '.index' in 'rangelength' We now access '[1]' as we'll do with the future tuple.
Wed, 22 Mar 2017 17:52:29 +0100 stablerange: stop using '.index' in '_queryrange'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:52:29 +0100] rev 2158
stablerange: stop using '.index' in '_queryrange' We now access '[1]' as we'll do with the future tuple.
Wed, 22 Mar 2017 17:52:08 +0100 stablerange: stop using '.index' in debugstablerange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:52:08 +0100] rev 2157
stablerange: stop using '.index' in debugstablerange We now access '[1]' as we'll do with the future tuple.
Wed, 22 Mar 2017 17:48:39 +0100 stablerange: make sure nobody use the 'stablekey' property outside the class
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:48:39 +0100] rev 2156
stablerange: make sure nobody use the 'stablekey' property outside the class
Wed, 22 Mar 2017 17:47:09 +0100 stablerange: make sure nobody use '.head' anymore
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:47:09 +0100] rev 2155
stablerange: make sure nobody use '.head' anymore We rename the attribute for good measure.
Wed, 22 Mar 2017 17:45:39 +0100 stablerange: stop using '.head' inside the class
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:45:39 +0100] rev 2154
stablerange: stop using '.head' inside the class We now access '[0]' as we'll do with the future tuple.
Wed, 22 Mar 2017 17:45:21 +0100 stablerange: stop using '.head' in '_slicesrangeat'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:45:21 +0100] rev 2153
stablerange: stop using '.head' in '_slicesrangeat' We now access '[0]' as we'll do with the future tuple.
Wed, 22 Mar 2017 17:44:10 +0100 stablerange: stop using '.head' in '_slicepoint'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:44:10 +0100] rev 2152
stablerange: stop using '.head' in '_slicepoint' We now access '[0]' as we'll do with the future tuple.
Wed, 22 Mar 2017 17:43:36 +0100 stablerange: stop using '.head' in rangelength
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:43:36 +0100] rev 2151
stablerange: stop using '.head' in rangelength We now access '[0]' as we'll do with the future tuple.
Wed, 22 Mar 2017 17:43:18 +0100 stablerange: stop using '.head' in debugstablerange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:43:18 +0100] rev 2150
stablerange: stop using '.head' in debugstablerange We now access '[0]' as we'll do with the future tuple.
Wed, 22 Mar 2017 17:38:28 +0100 stablerange: remove node unused 'node' property
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:38:28 +0100] rev 2149
stablerange: remove node unused 'node' property Close to killing that object.
Wed, 22 Mar 2017 17:35:08 +0100 stablerange: stop using '.node' in __repr__
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:35:08 +0100] rev 2148
stablerange: stop using '.node' in __repr__ This remove the last user to this method.
Wed, 22 Mar 2017 17:33:41 +0100 stablerange: change the key to use the revision number
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 17:33:41 +0100] rev 2147
stablerange: change the key to use the revision number Using node is more stable but for now do not have on disk caching and revision number should be find in memory. This makes the data used for the file cache closer to what it will be when we use tuple. We might reintroduce node in the future but let us keep it simple for now.
Wed, 22 Mar 2017 06:05:44 +0100 stablerange: stop using '.node' in _queryrange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 06:05:44 +0100] rev 2146
stablerange: stop using '.node' in _queryrange We access the range-head revision number by index and convert it on site.
Wed, 22 Mar 2017 06:05:32 +0100 stablerange: stop using '.node' in debugstablerange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 06:05:32 +0100] rev 2145
stablerange: stop using '.node' in debugstablerange We access the range-head revision number by index and convert it on site.
Wed, 22 Mar 2017 06:04:30 +0100 stablerange: stop using '.node' in findmissingrange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 06:04:30 +0100] rev 2144
stablerange: stop using '.node' in findmissingrange We access the range-head revision number by index and convert it on site.
Wed, 22 Mar 2017 06:03:57 +0100 stablerange: stop using '.node' in obshashrange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 06:03:57 +0100] rev 2143
stablerange: stop using '.node' in obshashrange We access the range-head revision number by index and convert it on site.
Wed, 22 Mar 2017 06:02:45 +0100 stablerange: stop using '.node' in subrangesclosure
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 06:02:45 +0100] rev 2142
stablerange: stop using '.node' in subrangesclosure We access the range-head revision number by index and convert it on site.
Wed, 22 Mar 2017 05:15:49 +0100 stablerange: have the class behave as a tuple
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 05:15:49 +0100] rev 2141
stablerange: have the class behave as a tuple If we want people to use a tuple, we should offer them a tuple. This should help update most of the code iteratively.
Wed, 22 Mar 2017 05:44:39 +0100 obshashrange: extract computation back into the discovery module
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 05:44:39 +0100] rev 2140
obshashrange: extract computation back into the discovery module This obshash is related to discovery and it seems more appropriate to have to live there. This remove the last large piece of logic from the class. We'll now be able to slowly turn it into a tuple.
Wed, 22 Mar 2017 05:36:45 +0100 obshashrange: use a small utility function to access the obshash
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 05:36:45 +0100] rev 2139
obshashrange: use a small utility function to access the obshash If we want the object to disappear we needs the top level code to stop accessing its attribute.
Wed, 22 Mar 2017 05:32:25 +0100 debugstablerange: minor code reformat
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 05:32:25 +0100] rev 2138
debugstablerange: minor code reformat The content of that list will become more complex as we drop the object so we make sure to have one value per line for clarity.
Wed, 22 Mar 2017 05:09:21 +0100 stablerange: move the subrangesclosure inside the module
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 05:09:21 +0100] rev 2137
stablerange: move the subrangesclosure inside the module This seems more suitable and open the way to simple update of how we build things without too much impact outside the module. The debug command is still in the 'obsdiscovery' module because it also deal to obshash and I'm not sure of were this should live yet.
Sun, 19 Mar 2017 05:33:52 +0100 stablerange: compute subranges from parent when possible
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 19 Mar 2017 05:33:52 +0100] rev 2136
stablerange: compute subranges from parent when possible Unless we are a merge, we can infer the standard subranges of a range by reusing the subranger of its parent. We update the implementation to do so. We still needs the "old way" for merge. We move that code in a dedicated function for the sake of simplicity.
Wed, 22 Mar 2017 04:27:42 +0100 stablerange: add an official warmup function
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 04:27:42 +0100] rev 2135
stablerange: add an official warmup function The function is responsible for making sure we have the necessary data for a sets of heads. For now this only warm the depth cache. More will follow soon. Such explicite warmup will be usefull for on disck caching as an early point of writing will be easier.
Sun, 19 Mar 2017 04:47:31 +0100 stablerange: remove now unnecessary setter
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 19 Mar 2017 04:47:31 +0100] rev 2134
stablerange: remove now unnecessary setter The class is handling all computations and cache access by itself now. So we can drop this method.
Sun, 19 Mar 2017 04:45:28 +0100 stablerange: directly perform slicing in the getting method
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 19 Mar 2017 04:45:28 +0100] rev 2133
stablerange: directly perform slicing in the getting method Now that all necessary functions are available, we simply apply the standard slicing on cache miss and proceed.
Sun, 19 Mar 2017 04:43:33 +0100 stablerange: move standard slice point definition in main class
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 19 Mar 2017 04:43:33 +0100] rev 2132
stablerange: move standard slice point definition in main class More migration of code away from the doomed individual class.
Sun, 19 Mar 2017 04:39:00 +0100 stablerange: move the slicing method on the central class
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 19 Mar 2017 04:39:00 +0100] rev 2131
stablerange: move the slicing method on the central class We migrate code away for the individual range class.
Sun, 19 Mar 2017 03:07:01 +0100 stablerange: move the range class in the new module
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 19 Mar 2017 03:07:01 +0100] rev 2130
stablerange: move the range class in the new module Our ultimate goal is to remove this class for performance reason. however for now, it contains most of the code we care about so we migrate it as a block first.
Sun, 19 Mar 2017 03:06:53 +0100 stablesort: move into the stablerange module
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 19 Mar 2017 03:06:53 +0100] rev 2129
stablesort: move into the stablerange module The stable range rely on the stable sort so it make senses to move it there. Will need direct access to it in the future.
Wed, 22 Mar 2017 03:49:40 +0100 subranges: migrate handling of single element range
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 03:49:40 +0100] rev 2128
subranges: migrate handling of single element range This is the simplest case by far, so we start with that one. We still use the rich object as an argument, but we'll do our best to not relying on that. This is important for performance reason.
Wed, 22 Mar 2017 03:47:28 +0100 stablerange: move the subrange cache into our new class
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 03:47:28 +0100] rev 2127
stablerange: move the subrange cache into our new class This is the first step toward having more logic in that class
Sun, 19 Mar 2017 00:44:31 +0100 depth: extract code dedicated to depth of a merge in its own function
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 19 Mar 2017 00:44:31 +0100] rev 2126
depth: extract code dedicated to depth of a merge in its own function The merge case is more complicated than the regular one, we extract is for the sake of clarity.
Sat, 18 Mar 2017 22:48:26 +0100 stablerange: move 'depth' inside a new 'stablerange' module
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 18 Mar 2017 22:48:26 +0100] rev 2125
stablerange: move 'depth' inside a new 'stablerange' module The stablerange used for discovery requires significant amount of code. There is algorithme, cache, cache persistence, etc. So we create a dedicated module for it. The function is directly moved into a rich class handling cache (for now in memory) because we know we will need it.
Wed, 22 Mar 2017 03:15:58 +0100 obsdiscovery: document the status of the module
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 03:15:58 +0100] rev 2124
obsdiscovery: document the status of the module I figured i would be useful to document what we expect from the code in each module.
Wed, 22 Mar 2017 03:13:15 +0100 split: move the debugcommand into a dedicated module
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 03:13:15 +0100] rev 2123
split: move the debugcommand into a dedicated module The code related to debugobsstorestat is fairly independant, we move it into its own module.
Wed, 22 Mar 2017 03:00:11 +0100 legacy: move 'debugrecordpruneparents' in the extensions
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 22 Mar 2017 03:00:11 +0100] rev 2122
legacy: move 'debugrecordpruneparents' in the extensions The transition is a couple of year old now, repository with the old format must be quite hard to find by now.
Thu, 16 Mar 2017 21:16:57 -0400 checks: correct the shebang line filtering for python files
Matt Harbison <matt_harbison@yahoo.com> [Thu, 16 Mar 2017 21:16:57 -0400] rev 2121
checks: correct the shebang line filtering for python files As it is, the only related file is docs/test2rst.py, which was covered by **.py. Not sure if it matters, but most patterns in core tests are for "#!.*?python". (Though there are a couple "#!.*python" tests.)
Thu, 16 Mar 2017 23:17:07 -0400 tests: add glob for Windows
Matt Harbison <matt_harbison@yahoo.com> [Thu, 16 Mar 2017 23:17:07 -0400] rev 2120
tests: add glob for Windows
Tue, 21 Mar 2017 11:58:55 +0100 tests: adds simple test case for heads checking
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 21 Mar 2017 11:58:55 +0100] rev 2119
tests: adds simple test case for heads checking This is the start of some systemic testing of the head superceeding detection mechanism.
Tue, 21 Mar 2017 10:25:12 +0100 tests: move exchange utility in testlib
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 21 Mar 2017 10:25:12 +0100] rev 2118
tests: move exchange utility in testlib We have a testlib directory now lets use it.
Tue, 14 Mar 2017 16:56:48 -0700 exchange: fix some wrong reference to serveronly
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 16:56:48 -0700] rev 2117
exchange: fix some wrong reference to serveronly The function have all moved into 'obsexchange' now, so we do not need (and actually cannot) seek them in 'evolve.serveronly'.
Tue, 14 Mar 2017 15:50:43 -0700 checks: add a test that check MANIFEST.in content
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 15:50:43 -0700] rev 2116
checks: add a test that check MANIFEST.in content This make sure we keep the things updated.
Tue, 14 Mar 2017 15:43:19 -0700 README: add a link to mercurial devel
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 15:43:19 -0700] rev 2115
README: add a link to mercurial devel This will help people to find the mailing list details.
Tue, 14 Mar 2017 15:42:51 -0700 README: tries to improve the title about server only
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 15:42:51 -0700] rev 2114
README: tries to improve the title about server only This seems a bit better.
Tue, 14 Mar 2017 15:42:21 -0700 README: remove mention of make
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 15:42:21 -0700] rev 2113
README: remove mention of make Using pip in all cases seems a better direction.
Tue, 14 Mar 2017 15:02:06 -0700 version: mark the current source as development version for 6.0.0
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 15:02:06 -0700] rev 2112
version: mark the current source as development version for 6.0.0 This is useful to distinguish the development version from the latest tagged version. In this particular case, this will allow us to publish a pre-version on pypi.
Tue, 14 Mar 2017 14:52:56 -0700 mercurial-3.8: merge with future evolve-6.0.0 mercurial-3.8
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 14:52:56 -0700] rev 2111
mercurial-3.8: merge with future evolve-6.0.0 We introduces the new code on the compat branch to check the tests.
Tue, 14 Mar 2017 14:47:20 -0700 mercurial-3.9: merge with hg-4.0 branch mercurial-3.9
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 14:47:20 -0700] rev 2110
mercurial-3.9: merge with hg-4.0 branch We merge with the code for the future evolve 6.0.0 code to check for compatibility. Only minor test output change (" -> ') have been noted.
Tue, 14 Mar 2017 14:38:10 -0700 mercurial-4.0: merge with future 6.0.0 mercurial-4.0
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 14:38:10 -0700] rev 2109
mercurial-4.0: merge with future 6.0.0 A new version will be released soon, we start handling mismatch in test output to make the actual release time smoother.
Tue, 14 Mar 2017 14:27:43 -0700 checks: update pyflakes matching too
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 14:27:43 -0700] rev 2108
checks: update pyflakes matching too We make sure to not select removed files.
Tue, 14 Mar 2017 14:19:11 -0700 checks: do not run pyflake on removed file
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 14:19:11 -0700] rev 2107
checks: do not run pyflake on removed file The fileset matches removed files. This confuses pyflakes for good reasons.
Tue, 14 Mar 2017 11:31:03 -0700 compat: closing mercurial-3.7 compatibility branch mercurial-3.7
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 11:31:03 -0700] rev 2106
compat: closing mercurial-3.7 compatibility branch The "evolve-6.0.0" release drop compatibility with Mercurial 3.7. No new commit are expected on this branch.
Tue, 14 Mar 2017 11:30:41 -0700 compat: closing mercurial-3.6 compatibility branch mercurial-3.6
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 11:30:41 -0700] rev 2105
compat: closing mercurial-3.6 compatibility branch The "evolve-6.0.0" release drop compatibility with Mercurial 3.6. No new commit are expected on this branch.
Tue, 14 Mar 2017 11:30:13 -0700 compat: closing mercurial-3.4 compatibility branch mercurial-3.4
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 11:30:13 -0700] rev 2104
compat: closing mercurial-3.4 compatibility branch The "evolve-6.0.0" release drop compatibility with Mercurial 3.4. No new commit are expected on this branch.
Tue, 14 Mar 2017 11:28:58 -0700 compat: closing mercurial-3.5 compatibility branch mercurial-3.5
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 11:28:58 -0700] rev 2103
compat: closing mercurial-3.5 compatibility branch The "evolve-6.0.0" release drop compatibility with mercurial 3.5. No new commit are expected on this branch.
Tue, 14 Mar 2017 11:26:55 -0700 README: timeless typo fixes
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 11:26:55 -0700] rev 2102
README: timeless typo fixes This applies some feedback timeless provided me from IRC.
Tue, 14 Mar 2017 09:51:25 -0700 cleanup: drop an empty section header
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 09:51:25 -0700] rev 2101
cleanup: drop an empty section header
Tue, 14 Mar 2017 09:50:55 -0700 compat: drop some <hg-3.4 compatibility code
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 14 Mar 2017 09:50:55 -0700] rev 2100
compat: drop some <hg-3.4 compatibility code The `hg commit` commands has a -i flag for ages now.
Mon, 13 Mar 2017 23:28:57 -0700 README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 13 Mar 2017 23:28:57 -0700] rev 2099
README: more update to prepare for pypi upload * mention the evolve.serveronly extension, * remove help related to topic into a different README file.
Mon, 13 Mar 2017 16:53:42 -0700 evolve: update the capabilities and commands name for obshashrange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 13 Mar 2017 16:53:42 -0700] rev 2098
evolve: update the capabilities and commands name for obshashrange We makes is clear that these version are useful for earlier testing but they are not ready for any kind of real usage yet.
Mon, 13 Mar 2017 16:05:33 -0700 README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 13 Mar 2017 16:05:33 -0700] rev 2097
README: more change to have a pretty rendering on pypi We moves section around and fixes some markup.
Mon, 13 Mar 2017 15:41:02 -0700 MANIFEST.in: fix various mismatch
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 13 Mar 2017 15:41:02 -0700] rev 2096
MANIFEST.in: fix various mismatch check-manifest is no longer complaining
Mon, 13 Mar 2017 15:33:00 -0700 README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 13 Mar 2017 15:33:00 -0700] rev 2095
README: rework install instruction For both evolve and topic. The topic introduction is updated too.
Mon, 13 Mar 2017 15:09:21 -0700 README: rework the intro
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 13 Mar 2017 15:09:21 -0700] rev 2094
README: rework the intro Less scary wording (similar to the wiki changes) and point to the user mailing list.
Sat, 11 Mar 2017 14:59:09 -0800 rangeobshash: minor cleanup of the obshash code
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 11 Mar 2017 14:59:09 -0800] rev 2093
rangeobshash: minor cleanup of the obshash code We achieved minor speedup by delaying the hashing until we know it is needed.
Sat, 11 Mar 2017 14:46:27 -0800 stablerange: remove call to 'repo.revs'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 11 Mar 2017 14:46:27 -0800] rev 2092
stablerange: remove call to 'repo.revs' It turned out that the percentage of time spend parsing the revset string was two digits, so we compute de heads inline.
Sun, 12 Mar 2017 08:38:39 -0700 stablerange: reuse node calculation as much as possible
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 12 Mar 2017 08:38:39 -0700] rev 2091
stablerange: reuse node calculation as much as possible We have a property cache with that value, so we just reuse it.
Sat, 11 Mar 2017 12:21:22 -0800 stablerange: adds some caching of the subranges
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 11 Mar 2017 12:21:22 -0800] rev 2090
stablerange: adds some caching of the subranges The goal of subranges is to be as reusable as possible, so we cache the subrange relationship to take advantage of this.
Sat, 11 Mar 2017 12:15:56 -0800 stablerange: operate on an unfiltered repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 11 Mar 2017 12:15:56 -0800] rev 2089
stablerange: operate on an unfiltered repository We only do operation on ancestors so using unfiltered is fine.
Sat, 11 Mar 2017 12:15:08 -0800 depth: use lower lever function to compute missing
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 11 Mar 2017 12:15:08 -0800] rev 2088
depth: use lower lever function to compute missing The time spend parsing the revset is noticeable.
Sat, 11 Mar 2017 10:26:30 -0800 depth: update depth to code to reuse ancestors depth
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 11 Mar 2017 10:26:30 -0800] rev 2087
depth: update depth to code to reuse ancestors depth Computing the depth of all N revs is no longer 'O(N**2)'
Sat, 11 Mar 2017 09:08:20 -0800 obsdiscovery: extract a smarted depth in utility
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 11 Mar 2017 09:08:20 -0800] rev 2086
obsdiscovery: extract a smarted depth in utility The function is reusing previous depth for ancestors unless this is a merge.
Sat, 11 Mar 2017 08:46:21 -0800 obsdiscovery: simply some of the missing computation
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 11 Mar 2017 08:46:21 -0800] rev 2085
obsdiscovery: simply some of the missing computation
Sun, 12 Mar 2017 08:15:14 -0700 discovery: implement some range based discovery
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 12 Mar 2017 08:15:14 -0700] rev 2084
discovery: implement some range based discovery This use the previously implemented methods to implement some discovery and fetch method using ranges. There is currently major performance issue and some aspect of the protocol will changes.
Fri, 10 Mar 2017 10:36:46 -0800 discovery: introduce a official 'obshash associated to a range
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 10 Mar 2017 10:36:46 -0800] rev 2083
discovery: introduce a official 'obshash associated to a range The hash in a combination of the hash a its subrange. If the range is a leaf, we have the obsmarker relevant to the node in that leaf range.
Thu, 09 Mar 2017 22:57:41 -0800 discovery: introduce "stable slicing" methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 09 Mar 2017 22:57:41 -0800] rev 2082
discovery: introduce "stable slicing" methods We introduce new code that leverage the stable sorting to slices a graph in a way "stable" accross repository. This should allow us to use theses slices for obsolescence markers discovery.
Thu, 09 Mar 2017 19:18:11 -0800 discovery: adds a function doing revnum independant sorting
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 09 Mar 2017 19:18:11 -0800] rev 2081
discovery: adds a function doing revnum independant sorting The function is doing a topological sort without depending on revision number. This make the sort independent of the repository and suitable for discovery.
Thu, 09 Mar 2017 18:36:46 -0800 hgignore: also ignore the 'dist' directory
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 09 Mar 2017 18:36:46 -0800] rev 2080
hgignore: also ignore the 'dist' directory This is generated by the 'sdist' command
Thu, 09 Mar 2017 18:31:55 -0800 obsexchange: drop unused module
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 09 Mar 2017 18:31:55 -0800] rev 2079
obsexchange: drop unused module shame shame shame
Thu, 09 Mar 2017 18:08:45 -0800 MANIFEST.in: also includes topic
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 09 Mar 2017 18:08:45 -0800] rev 2078
MANIFEST.in: also includes topic That was also overlooked when we added topic.
Thu, 09 Mar 2017 18:07:58 -0800 MANIFEST.in: fix to include all evolve submodule
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 09 Mar 2017 18:07:58 -0800] rev 2077
MANIFEST.in: fix to include all evolve submodule This was overlooked before.
Tue, 07 Mar 2017 15:58:15 +0100 obsdiscovery: organize the code by category
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 15:58:15 +0100] rev 2076
obsdiscovery: organize the code by category A private function get promoted to public since another module uses it.
Thu, 09 Mar 2017 17:50:50 -0800 evolution: drop the old __temporary__.advertiseobsolete option
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 09 Mar 2017 17:50:50 -0800] rev 2075
evolution: drop the old __temporary__.advertiseobsolete option Mercurial code supports such feature directly though its 'experimental.evolution' config option. So we drop the old code and config.
Thu, 09 Mar 2017 17:34:30 -0800 README: mention the 'serveronly' extensions
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 09 Mar 2017 17:34:30 -0800] rev 2074
README: mention the 'serveronly' extensions It is now properly installed with the package.
Thu, 09 Mar 2017 17:33:57 -0800 server only: test a more standard method of disabling exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 09 Mar 2017 17:33:57 -0800] rev 2073
server only: test a more standard method of disabling exchange We have an "official" config option from core so lets just use it.
Thu, 09 Mar 2017 12:47:31 -0800 debian: don't delete evolve and topic extensions
Martin von Zweigbergk <martinvonz@google.com> [Thu, 09 Mar 2017 12:47:31 -0800] rev 2072
debian: don't delete evolve and topic extensions The debian packaging rules deletes all __init__.py to avoid conflicting with the __init__.py that declares the namespace package. Now that the evolve and topic extensions also live in __init__.py files, we clearly don't want to delete all __init__.py files anymore; only the hgext3rd/__init__.py should be deleted.
Thu, 09 Mar 2017 12:20:27 -0800 serveronly: replace exc.message with str(exc)
Arun Kulshreshtha <kulshrax@fb.com> [Thu, 09 Mar 2017 12:20:27 -0800] rev 2071
serveronly: replace exc.message with str(exc) BaseException.message is deprecated in Python 2.6, so use str() instead.
Thu, 09 Mar 2017 13:11:20 -0800 cleanup: stop using 'repo.join' methods
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 09 Mar 2017 13:11:20 -0800] rev 2070
cleanup: stop using 'repo.join' methods These repository method might get deprecated soon. In addition, accessing the vfs-s is not that hard.
Thu, 09 Mar 2017 10:42:50 -0800 setup: add author_email
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 09 Mar 2017 10:42:50 -0800] rev 2069
setup: add author_email The 'sdist' command complains about it otherwise.
Thu, 09 Mar 2017 10:42:25 -0800 readme: make it valid rst
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 09 Mar 2017 10:42:25 -0800] rev 2068
readme: make it valid rst That will eventually please pypi
Thu, 09 Mar 2017 08:33:00 -0800 setup.py: remove unused and harmful code importing mercurial
Martin von Zweigbergk <martinvonz@google.com> [Thu, 09 Mar 2017 08:33:00 -0800] rev 2067
setup.py: remove unused and harmful code importing mercurial This was failing on some build system we have. The import seemed to succeed, but then mercurial.__all__ would fail. I don't know why, but since it's unused anyway, let's just drop it.
Wed, 08 Mar 2017 13:48:35 -0800 docs: update references to installation path
Martin von Zweigbergk <martinvonz@google.com> [Wed, 08 Mar 2017 13:48:35 -0800] rev 2066
docs: update references to installation path
Wed, 08 Mar 2017 17:07:38 -0800 test: rename serveronly tests to reflect the new extension name
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 08 Mar 2017 17:07:38 -0800] rev 2065
test: rename serveronly tests to reflect the new extension name
Tue, 07 Mar 2017 15:52:04 +0100 evolve: stop running 'serveronly' setup
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 15:52:04 +0100] rev 2064
evolve: stop running 'serveronly' setup Since there is no common logic remaining the smaller extension we can stop running its setup in the main extensions
Tue, 07 Mar 2017 15:49:22 +0100 discovery: directly merge the 'obsdiscovery' exthelper in top level extensions
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 15:49:22 +0100] rev 2063
discovery: directly merge the 'obsdiscovery' exthelper in top level extensions There is no reason to proxy it through the 'obsexchange' submodule.
Tue, 07 Mar 2017 15:47:09 +0100 compat: drop advertising of unsupported experimental bundle2 part
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 15:47:09 +0100] rev 2062
compat: drop advertising of unsupported experimental bundle2 part The support for this part was dropped long ago in 74bc8a0c2c02. But we forgot to remove it from the 'simple4server' extension.
Tue, 07 Mar 2017 15:45:21 +0100 exchange: dispatch all code in 'serveronly' to the appropriate submodule
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 15:45:21 +0100] rev 2061
exchange: dispatch all code in 'serveronly' to the appropriate submodule All code related to exchange is now in either 'evolve.obsexchange' or 'evolve.obsdiscovery', and the 'serveronly' extension is using their 'exthelper' to set itself up. As a side effect, the 'serveronly' extensions now enable better exchange when pushing from that server too.
Wed, 08 Mar 2017 15:35:16 -0800 capabilities: properly sort capabilities after updating them
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 08 Mar 2017 15:35:16 -0800] rev 2060
capabilities: properly sort capabilities after updating them Capabilities are usually sorted. This is especially useful to avoid silly error in test.
Tue, 07 Mar 2017 15:10:57 +0100 pull: also issue warning for old mercurial version
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 15:10:57 +0100] rev 2059
pull: also issue warning for old mercurial version
Tue, 07 Mar 2017 15:04:58 +0100 exchange: split between modern and legacy code
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 15:04:58 +0100] rev 2058
exchange: split between modern and legacy code We make it clearer what code is old crust and what code is the cutting edge part.
Tue, 07 Mar 2017 14:59:00 +0100 push: add extra warning about pushing to old server
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 14:59:00 +0100] rev 2057
push: add extra warning about pushing to old server Pushing using old method is slow and racy. We adds warning to point this to the user. We also add inline comment to clarify the function purpose.
Tue, 07 Mar 2017 14:45:02 +0100 push: exit obsexchange early if disabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 14:45:02 +0100] rev 2056
push: exit obsexchange early if disabled We were exiting the function later, in particular -after- issuing a message about exchanging obsmarkers.
Tue, 07 Mar 2017 14:41:53 +0100 compat: drop special code handling change in push/pull op API
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 14:41:53 +0100] rev 2055
compat: drop special code handling change in push/pull op API All version of Mercurial we support have the same API.
Tue, 07 Mar 2017 14:29:43 +0100 discovery: split discovery related code in 'obsdiscovery'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 14:29:43 +0100] rev 2054
discovery: split discovery related code in 'obsdiscovery' More code splitting for more clarity.
Tue, 07 Mar 2017 14:19:12 +0100 exchange: rename the module
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 14:19:12 +0100] rev 2053
exchange: rename the module Let's add a 'obs' prefix to make the module role clearer.
Wed, 08 Mar 2017 23:04:45 +0100 setup.py: include all evolve submodule
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 08 Mar 2017 23:04:45 +0100] rev 2052
setup.py: include all evolve submodule We are splitting more and more code into submodule, we make sure their are properly installed. As a side effect the 'legacy' module is now installed, that is not too important. The 'evolve.hack' package is still non installed by default, as intended.
Tue, 07 Mar 2017 09:47:37 -0800 evolve: switch away from deprecated repo.opener
Martin von Zweigbergk <martinvonz@google.com> [Tue, 07 Mar 2017 09:47:37 -0800] rev 2051
evolve: switch away from deprecated repo.opener
Tue, 07 Mar 2017 13:31:19 +0100 serveronly: use the same extensions metadata than evolve
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 13:31:19 +0100] rev 2050
serveronly: use the same extensions metadata than evolve This will avoid them to drift out of sync with evolve.
Tue, 07 Mar 2017 13:24:07 +0100 evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 13:24:07 +0100] rev 2049
evolve: move extension metadata in their own module This will allow the server only extension to reuse them. As a side effect we can now simplify the config parsing in setup.py
Tue, 07 Mar 2017 13:12:27 +0100 evolve: specify the 'minimalhgversion'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 13:12:27 +0100] rev 2048
evolve: specify the 'minimalhgversion' 3.7 added a new nice and shinny variable to help user know when they use the wrong version of Mercurial with an extension. We now use it.
Tue, 07 Mar 2017 12:27:01 +0100 serveronly: give the sub extension a way to access to the 'evolve' module
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 12:27:01 +0100] rev 2047
serveronly: give the sub extension a way to access to the 'evolve' module We keep it as clean as possible but if the extension is specified with a direct path, we have to be a bit hacky. Being able to access the whole evolve extension from the 'serveronly' extension will lift multiple constraints on how we organise the code and will allow for cleaner and clearer code. We extract a minor function into a 'utility' module to have something to depends on.
Tue, 07 Mar 2017 12:10:05 +0100 test: update test to check for various way to import the serveronly things
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 12:10:05 +0100] rev 2046
test: update test to check for various way to import the serveronly things We add a "setup script" that update the PYTHONPATH to allow direct import of the extension code. Then we tests that all way to import the extensions works.
Tue, 07 Mar 2017 12:04:05 +0100 tests: move "test setup" script into a 'testlib' directory
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 07 Mar 2017 12:04:05 +0100] rev 2045
tests: move "test setup" script into a 'testlib' directory This will avoid cluttering the tests directory.
Sat, 04 Mar 2017 02:56:50 +0100 exchange: move code related to exchange into a 'evolve.exchange' submodule
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 04 Mar 2017 02:56:50 +0100] rev 2044
exchange: move code related to exchange into a 'evolve.exchange' submodule The evolve extension is HUGE, we split exchange code appart before doing more work on it.
Sat, 04 Mar 2017 03:37:32 +0100 exthelper: move command declaration into the exthelper
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 04 Mar 2017 03:37:32 +0100] rev 2043
exthelper: move command declaration into the exthelper This is necessary to allow sub module to declare commands too.
Sat, 04 Mar 2017 01:43:36 +0100 exthelper: add a 'merge' method
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 04 Mar 2017 01:43:36 +0100] rev 2042
exthelper: add a 'merge' method This will help us spread more code in different sub module.
Sat, 04 Mar 2017 01:21:43 +0100 exthelper: extract into its own submodule
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 04 Mar 2017 01:21:43 +0100] rev 2041
exthelper: extract into its own submodule That code is fairly independant, we extract it into its own extensions to clarify the code
Fri, 03 Mar 2017 10:58:59 +0100 makefile: add an 'install-home' target
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 03 Mar 2017 10:58:59 +0100] rev 2040
makefile: add an 'install-home' target It is similar to the Mercurial one.
Fri, 03 Mar 2017 10:58:30 +0100 makefile: only check for HGROOT when running tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 03 Mar 2017 10:58:30 +0100] rev 2039
makefile: only check for HGROOT when running tests Otherwise we breaks other target that do not needs HGROOT.
Thu, 02 Mar 2017 20:13:47 +0100 tests: split pyflake and flake8 tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 20:13:47 +0100] rev 2038
tests: split pyflake and flake8 tests This allow more parallelism and better skip message
Thu, 02 Mar 2017 20:24:17 +0100 flake8: run on all python file
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 20:24:17 +0100] rev 2037
flake8: run on all python file We can now run it on all file in the repository to catch potential regression.
Thu, 02 Mar 2017 20:23:45 +0100 flake8: fix error in 'setup.py'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 20:23:45 +0100] rev 2036
flake8: fix error in 'setup.py' Some strange indentation in there.
Thu, 02 Mar 2017 20:23:18 +0100 flake8: fix error in 'test2rst.py'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 20:23:18 +0100] rev 2035
flake8: fix error in 'test2rst.py' There is variosu dead code in there :-/ but we just fix flake8 complains for now.
Thu, 02 Mar 2017 20:22:29 +0100 flake8: remove "error" in documentation configuration
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 20:22:29 +0100] rev 2034
flake8: remove "error" in documentation configuration The "error" are debatable but cheap to fix.
Thu, 02 Mar 2017 18:14:33 +0100 flake8: enable on evolve too
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 18:14:33 +0100] rev 2033
flake8: enable on evolve too Now that all error are fixed we can run it on all file to prevent regression.
Thu, 02 Mar 2017 19:29:37 +0100 flake8: update the code sources to fixes a horde of pyflake warnings
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 19:29:37 +0100] rev 2032
flake8: update the code sources to fixes a horde of pyflake warnings There is many of them, they all fixed.
Thu, 02 Mar 2017 19:28:52 +0100 flake8: register 'xrange' as a builtins
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 19:28:52 +0100] rev 2031
flake8: register 'xrange' as a builtins For some reason, flake8 thinks is is undefined.
Thu, 02 Mar 2017 19:28:12 +0100 flake8: ignore an addition rules related to import
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 19:28:12 +0100] rev 2030
flake8: ignore an addition rules related to import Our initialization code is too complex to make flake8 happy
Thu, 02 Mar 2017 19:25:54 +0100 flake8: document all the exception we added
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 19:25:54 +0100] rev 2029
flake8: document all the exception we added
Thu, 02 Mar 2017 18:28:14 +0100 README: mention the addition of the topic extensions
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 18:28:14 +0100] rev 2028
README: mention the addition of the topic extensions That is probably worth noting.
Thu, 02 Mar 2017 18:14:21 +0100 tests: run pyflake on all python files
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 18:14:21 +0100] rev 2027
tests: run pyflake on all python files We have fixed the handfull of error pyflakes found on evolve so we can setup the test to prevent regression. Next stop flake8.
Thu, 02 Mar 2017 18:13:57 +0100 serveronly: fix undefined variable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 18:13:57 +0100] rev 2026
serveronly: fix undefined variable This is a legit bug caught by pyflake
Thu, 02 Mar 2017 18:13:45 +0100 legacy: properly test for mercurial version in the legacy extensions
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 18:13:45 +0100] rev 2025
legacy: properly test for mercurial version in the legacy extensions Otherwise 'demandimport' would delay the raising of ImportError.
Thu, 02 Mar 2017 18:13:20 +0100 evolve: prevent global variable shadowing
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 18:13:20 +0100] rev 2024
evolve: prevent global variable shadowing Small and harmless pyflake complains.
Thu, 02 Mar 2017 18:13:03 +0100 evolve: drop some unused variables
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 18:13:03 +0100] rev 2023
evolve: drop some unused variables More pyflakes catches.
Thu, 02 Mar 2017 18:12:47 +0100 evolve: drop some unused import
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 18:12:47 +0100] rev 2022
evolve: drop some unused import topic came with pyflake checking, let us make use of it.
Thu, 02 Mar 2017 18:26:47 +0100 README: fix evolve installation path
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 18:26:47 +0100] rev 2021
README: fix evolve installation path We forgot to do so when we moved things to hgext3rd.
Thu, 02 Mar 2017 18:07:46 +0100 topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 18:07:46 +0100] rev 2020
topic: merge the topic extension in the evolve repository There is a lot of synergy between the two concepts. Topic is expected to be able to smooth multiple of evolution sharp edge. Having them both in the same repository will make this collaboration easier.
Thu, 23 Feb 2017 15:19:31 +0100 test: adapt to new core output
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 23 Feb 2017 15:19:31 +0100] rev 2019
test: adapt to new core output Troubles are now displayed by log so we have to update the test.
Thu, 23 Feb 2017 14:56:22 +0100 test: adapt to change in mercurial output
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 23 Feb 2017 14:56:22 +0100] rev 2018
test: adapt to change in mercurial output Nothing major here.
Thu, 23 Feb 2017 13:58:52 +0100 compat: handle difference of signature for update destination hooks
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 23 Feb 2017 13:58:52 +0100] rev 2017
compat: handle difference of signature for update destination hooks The 'check' argument have been dropped in 11c253997b0e. So we make it optional for compatibility.
Fri, 14 Oct 2016 00:54:04 +0200 setup.py: also install 'hgext3rd/__init__.py'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 14 Oct 2016 00:54:04 +0200] rev 2016
setup.py: also install 'hgext3rd/__init__.py' This file is needed for the namespace package to work. (And also for the package to work on its own at all).
Fri, 07 Oct 2016 04:10:23 +0200 tutorial: add a very basic pointer in the readme
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 07 Oct 2016 04:10:23 +0200] rev 2015
tutorial: add a very basic pointer in the readme Ideally we should at least build the html from the rst.
Fri, 30 Sep 2016 18:21:50 +0200 tutorial: add a second part about having multiple topic
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 30 Sep 2016 18:21:50 +0200] rev 2014
tutorial: add a second part about having multiple topic
Thu, 29 Sep 2016 16:48:13 +0200 tutorial: add a first version of the tutorial with the basics
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 29 Sep 2016 16:48:13 +0200] rev 2013
tutorial: add a first version of the tutorial with the basics This is probably not wonderful but at least we have a base.
Tue, 13 Sep 2016 17:58:22 +0200 doc: add more details about the head checking
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 13 Sep 2016 17:58:22 +0200] rev 2012
doc: add more details about the head checking Once again, probably not great, but better than nothing.
Wed, 07 Sep 2016 12:45:23 +0200 documentation: some basic update of the documentation
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 07 Sep 2016 12:45:23 +0200] rev 2011
documentation: some basic update of the documentation So far the documentation was pretty scarce and a lot of important information was missing. The new content is probably not great but it is an improvement.
Wed, 07 Sep 2016 10:40:18 +0800 flake8: ignore N801
Anton Shestakov <av6@dwimlabs.net> [Wed, 07 Sep 2016 10:40:18 +0800] rev 2010
flake8: ignore N801 N801 is "class names should use CapWords convention" The message comes from a pep8 plugin "pep8-naming" which cares about naming conventions. If the plugin is installed, it is automatically used by pep8 and flake8.
Wed, 07 Sep 2016 10:35:47 +0800 flake8: don't ignore E713 now that it's fixed
Anton Shestakov <av6@dwimlabs.net> [Wed, 07 Sep 2016 10:35:47 +0800] rev 2009
flake8: don't ignore E713 now that it's fixed E713 is "test for membership should be ‘not in’"
Tue, 30 Aug 2016 15:23:03 -0700 flake8: fix E713 style
Sean Farley <sean@farley.io> [Tue, 30 Aug 2016 15:23:03 -0700] rev 2008
flake8: fix E713 style
Tue, 30 Aug 2016 15:22:24 -0700 flake8: fix E301 style
Sean Farley <sean@farley.io> [Tue, 30 Aug 2016 15:22:24 -0700] rev 2007
flake8: fix E301 style
Tue, 30 Aug 2016 15:18:43 -0700 flake8: fix E111 style
Sean Farley <sean@farley.io> [Tue, 30 Aug 2016 15:18:43 -0700] rev 2006
flake8: fix E111 style OFF BY ONE ERRORS ARE THE WORST
Tue, 30 Aug 2016 15:15:05 -0700 flake8: fix E222 style
Sean Farley <sean@farley.io> [Tue, 30 Aug 2016 15:15:05 -0700] rev 2005
flake8: fix E222 style
Tue, 30 Aug 2016 14:10:16 -0700 flake8: fix E127 style
Sean Farley <sean@farley.io> [Tue, 30 Aug 2016 14:10:16 -0700] rev 2004
flake8: fix E127 style
Tue, 30 Aug 2016 14:12:49 -0700 flake8: fix W391 style
Sean Farley <sean@farley.io> [Tue, 30 Aug 2016 14:12:49 -0700] rev 2003
flake8: fix W391 style
Tue, 30 Aug 2016 14:05:36 -0700 tests: add flake8 check
Sean Farley <sean@farley.io> [Tue, 30 Aug 2016 14:05:36 -0700] rev 2002
tests: add flake8 check This test will hopefully help prevent style errors. To be determined: which errors / warnings to ignore?
Sun, 15 May 2016 22:23:16 -0300 flake8: add file for rules to ignore
Sean Farley <sean@farley.io> [Sun, 15 May 2016 22:23:16 -0300] rev 2001
flake8: add file for rules to ignore This will help prevent users that have an editor with flake8 capabilities from fixing linter errors for rules that are not wanted by the project. Initially, this ignore list includes everything in the project that violates pep8. I'll try to ween this list down to something a little more manageable.
Fri, 26 Aug 2016 16:57:45 +0000 init: guard _namemap with repo.topics (issue5351)
timeless@gmail.com [Fri, 26 Aug 2016 16:57:45 +0000] rev 2000
init: guard _namemap with repo.topics (issue5351) This prevents reading extra data on all repo commits when there is no topic for a given name. _namemap is called a lot, and it is often called for commit shas -- which should pretty much never be names of topics...
Fri, 26 Aug 2016 16:52:02 +0000 init: cache repo.topics
timeless@gmail.com [Fri, 26 Aug 2016 16:52:02 +0000] rev 1999
init: cache repo.topics
Fri, 26 Aug 2016 21:57:48 +0200 stack: add warning about multiple heads
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 26 Aug 2016 21:57:48 +0200] rev 1998
stack: add warning about multiple heads This seems a good spot to nudge people toward reducing there head count.
Fri, 26 Aug 2016 14:55:58 +0200 stack: add some behind information
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 26 Aug 2016 14:55:58 +0200] rev 1997
stack: add some behind information This is the next useful thing after branch
Fri, 26 Aug 2016 14:23:31 +0200 stack: add some basic branch information
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 26 Aug 2016 14:23:31 +0200] rev 1996
stack: add some basic branch information In the same spirit as knowing the topic you are on, having some branch data seem useful (yet, this smell a bit like summary)
Fri, 26 Aug 2016 14:14:04 +0200 stack: add some header with the topic name
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 26 Aug 2016 14:14:04 +0200] rev 1995
stack: add some header with the topic name This is the first step of a move to add more data about a stack in the command output.
Fri, 26 Aug 2016 14:58:18 +0200 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 26 Aug 2016 14:58:18 +0200] rev 1994
test: add testing of stack output in 'stack-data' test. We are going to display common information, so we reuse test case.
Fri, 26 Aug 2016 14:58:49 +0200 test: rename 'list' test to 'stack-data'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 26 Aug 2016 14:58:49 +0200] rev 1993
test: rename 'list' test to 'stack-data' We are about to add stack data information to 'hg stack'. As we'll re-use the test data creating the 'test-topic-list.t' we need to rename it first to embrace its new semantic.
Fri, 26 Aug 2016 12:58:16 +0200 stack: also dim bases
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 26 Aug 2016 12:58:16 +0200] rev 1992
stack: also dim bases Now that they may have index it seems better to have a stronger marking for bases.
Fri, 26 Aug 2016 12:52:06 +0200 stack: reusing the index number in base when applicable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 26 Aug 2016 12:52:06 +0200] rev 1991
stack: reusing the index number in base when applicable This clarify the branching when it is easy to track back the branching point. This does not takes the evolution graph into account yet.
Fri, 26 Aug 2016 12:37:52 +0200 stack: extra argument validation logic outside of showstack
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 26 Aug 2016 12:37:52 +0200] rev 1990
stack: extra argument validation logic outside of showstack It seems sensible keep the 'showstack' function purely about actually displaying and existing stack.
Tue, 23 Aug 2016 21:18:47 +0200 summary: properly label the topic name in summary
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 23 Aug 2016 21:18:47 +0200] rev 1989
summary: properly label the topic name in summary This should be labelled 'topic.active' so that color can pick it up properly.
Tue, 23 Aug 2016 23:38:28 +0200 topic: list the branches this topic belong to when verbose
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 23 Aug 2016 23:38:28 +0200] rev 1988
topic: list the branches this topic belong to when verbose Using the verbose listing a bit more, this seems to be useful information.
Tue, 16 Aug 2016 15:43:06 +0200 topic: properly justify the verbose data when listing topic
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 16 Aug 2016 15:43:06 +0200] rev 1987
topic: properly justify the verbose data when listing topic We align all data to the widest topic.
Tue, 16 Aug 2016 15:32:54 +0200 ngtip: rely on topicmap for 'ngtip'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 16 Aug 2016 15:32:54 +0200] rev 1986
ngtip: rely on topicmap for 'ngtip' ngtip is an old function that predates the introduction of a more proper topic aware 'topicmap'. We replace the old code with a call to the new one. This change set function return type and have minor effect in a couple of place.
Sun, 14 Aug 2016 19:57:58 +0200 topic: list the number of 'behind' changeset when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 14 Aug 2016 19:57:58 +0200] rev 1985
topic: list the number of 'behind' changeset when --verbose is used Displaying more information in the topic list is useful, we continue with the number of 'behind' changesets. This 'behind' count the number of new changesets on the default rebase destination. This will highlight topics that need rebasing.
Mon, 15 Aug 2016 00:19:44 +0200 destination: honor the sourceset argument of _destmerge
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 15 Aug 2016 00:19:44 +0200] rev 1984
destination: honor the sourceset argument of _destmerge Mercurial gained a "sourceset" argument to compute the merge destination of any changeset (the one in the 'sourceset'). This now works for the version in topic too. The support is quite basic (because we pick only one changeset from the sourceset) but that's a start.
Mon, 15 Aug 2016 05:25:53 +0200 destmerge: improve topic head computation and handling
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 15 Aug 2016 05:25:53 +0200] rev 1983
destmerge: improve topic head computation and handling This rework get use two benefits: - heads are now computed on a "stabilized" state, - heads above the 'source' are now properly cleaned up,
Mon, 15 Aug 2016 05:15:19 +0200 evolve: extract the code copied from evolve in a submodule
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 15 Aug 2016 05:15:19 +0200] rev 1982
evolve: extract the code copied from evolve in a submodule This will allow us to use that code in other module.
Mon, 15 Aug 2016 01:50:15 +0200 destmerge: honor the 'onheadcheck' argument
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 15 Aug 2016 01:50:15 +0200] rev 1981
destmerge: honor the 'onheadcheck' argument This argument was introduced in Mercurial some time ago but the topic extension was never updated to take it in account. This is now fixed.
Sun, 14 Aug 2016 23:17:09 +0200 destination: use the correct abort class for error
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 14 Aug 2016 23:17:09 +0200] rev 1980
destination: use the correct abort class for error These errors have been in Mercurial long enough. Having them will make the coming changesets simpler.
Sun, 14 Aug 2016 19:40:53 +0200 topic: list the number of head when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 14 Aug 2016 19:40:53 +0200] rev 1979
topic: list the number of head when --verbose is used Displaying more information in the topic list is useful, we continue with the number of heads on the topics, this will help highlight the problem to users. We only display head if there is more than one.
Sat, 13 Aug 2016 01:24:10 +0200 topic: list the number of troubled changesets when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 13 Aug 2016 01:24:10 +0200] rev 1978
topic: list the number of troubled changesets when --verbose is used Displaying more information in the topic list is useful, we continue with the number of troubled changesets. This will help people to spot topics that needs evolution, for example after a pull.
Fri, 12 Aug 2016 23:59:37 +0200 topic: list the number of changesets when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 12 Aug 2016 23:59:37 +0200] rev 1977
topic: list the number of changesets when --verbose is used Displaying more information in the topic list is useful, we start with the most obvious: number of non-obsolete changeset in the topic.
Sun, 14 Aug 2016 20:40:46 +0200 topic: add color for the active topic
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 14 Aug 2016 20:40:46 +0200] rev 1976
topic: add color for the active topic We reuse the same color that the one used for the active bookmark.
Sat, 13 Aug 2016 00:37:33 +0200 topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 13 Aug 2016 00:37:33 +0200] rev 1975
topic: add formatter support Using formatter to output the list of topic will add support for color and richer templater. We add some test for output control. We introduce a dedicated test to help with coming more complexe output.
Sat, 13 Aug 2016 00:13:05 +0200 topic: extract the code listing all topics
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 13 Aug 2016 00:13:05 +0200] rev 1974
topic: extract the code listing all topics The code will become more complexe with formatter support and additional data in the verbose output. We extract the code in its own function first.
Fri, 12 Aug 2016 11:09:26 +0200 stack: introduce and explicite command to display the stack
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 12 Aug 2016 11:09:26 +0200] rev 1973
stack: introduce and explicite command to display the stack If is worth testing having the feature lives outside 'hg topic --list'. The 'stack' name is sub optimal because the conflict with 'status'. using "hg st" would still work as 'st' is hard coded, but this mean 'hg stack' has no short version.
Thu, 11 Aug 2016 22:52:49 +0200 testedwith: update to 3.9
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 11 Aug 2016 22:52:49 +0200] rev 1972
testedwith: update to 3.9 This is might still 3.7 compatible but I'm no longer running the test and I would says the user base is small enough to not care.
Thu, 11 Aug 2016 22:50:58 +0200 topic: make sure we have the 'wlock' when setting topic
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 11 Aug 2016 22:50:58 +0200] rev 1971
topic: make sure we have the 'wlock' when setting topic We where writing the '.hg/topic' file without a lot. That was bad.
Wed, 13 Jul 2016 16:19:41 +0200 cleanup: removed unused mercurial.util import
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 13 Jul 2016 16:19:41 +0200] rev 1970
cleanup: removed unused mercurial.util import
Fri, 08 Jul 2016 16:59:43 +0000 compat: tolerate missing rebase extension
timeless@gmail.com [Fri, 08 Jul 2016 16:59:43 +0000] rev 1969
compat: tolerate missing rebase extension
Fri, 08 Jul 2016 16:09:55 +0000 compat: mercurial dropped alias for hashlib.sha1
timeless@gmail.com [Fri, 08 Jul 2016 16:09:55 +0000] rev 1968
compat: mercurial dropped alias for hashlib.sha1
Wed, 11 May 2016 16:22:52 +0200 destination: add an XXX about handling destspace in destmerge
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 11 May 2016 16:22:52 +0200] rev 1967
destination: add an XXX about handling destspace in destmerge This that we hopefully do not forget about this.
Mon, 25 Apr 2016 21:24:20 -0700 update: calculate 'partial' as core does
Sean Farley <sean@farley.io> [Mon, 25 Apr 2016 21:24:20 -0700] rev 1966
update: calculate 'partial' as core does
Mon, 25 Apr 2016 20:00:19 -0700 discovery: flake8
Sean Farley <sean@farley.io> [Mon, 25 Apr 2016 20:00:19 -0700] rev 1965
discovery: flake8
Mon, 25 Apr 2016 19:59:05 -0700 destination: flake8
Sean Farley <sean@farley.io> [Mon, 25 Apr 2016 19:59:05 -0700] rev 1964
destination: flake8
Tue, 22 Mar 2016 14:51:35 -0700 style: update __init__.py
Sean Farley <sean@farley.io> [Tue, 22 Mar 2016 14:51:35 -0700] rev 1963
style: update __init__.py
Wed, 11 May 2016 16:06:58 +0200 compat: adapt to the new destspace argument of destmerge
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 11 May 2016 16:06:58 +0200] rev 1962
compat: adapt to the new destspace argument of destmerge The argument is currently ignored in the topic case for simplicity, but we properly accept it and propagate it to the original function to prevent crash and behavior regression in the non-topic case.
Mon, 04 Apr 2016 00:28:03 -0700 stack: prevent crash when topic is rooted on nullid
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 04 Apr 2016 00:28:03 -0700] rev 1961
stack: prevent crash when topic is rooted on nullid We exclude null from displayed base. This was causing a crash when trying to display its description (we'll still have to handle the empty description case, but it is now less urgent).
Mon, 04 Apr 2016 00:22:20 -0700 test: add topic on the first 2 changesets too
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 04 Apr 2016 00:22:20 -0700] rev 1960
test: add topic on the first 2 changesets too This will be used to add a test for topic rooted on nullid. We introduce this in its own changeset to reduce the noise if the actual changeset.
Mon, 04 Apr 2016 00:17:54 -0700 test: remove comment about new head warning
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 04 Apr 2016 00:17:54 -0700] rev 1959
test: remove comment about new head warning The new head warning was buggy. This was fixed in bdc5bb223b50.
Sun, 03 Apr 2016 21:41:38 -0700 stack: also change the indexing of the t# reference
Pierre-Yves David <pierre-yves.david@fb.com> [Sun, 03 Apr 2016 21:41:38 -0700] rev 1958
stack: also change the indexing of the t# reference Changeset 61f36480740f changed the index displayed (we now index from 1), but forgot to update the logic used to resolve the 't#' name. This changeset fixes it.
Fri, 01 Apr 2016 16:58:52 -0700 stack: change the ascii symbold for base
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 01 Apr 2016 16:58:52 -0700] rev 1957
stack: change the ascii symbold for base Now that the children line go upward, '_' is no longer clear as is take the lower part of the line. We go for '^' that use the upper part.
Fri, 01 Apr 2016 16:57:11 -0700 stack: reverse the display order
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 01 Apr 2016 16:57:11 -0700] rev 1956
stack: reverse the display order Most mercurial command display the most recent changeset first. We put `hg topic --list` inline with this.
Fri, 01 Apr 2016 16:55:24 -0700 topic: extract display from entry computation
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 01 Apr 2016 16:55:24 -0700] rev 1955
topic: extract display from entry computation We are about to reverse the order of the output (most recent first) so it will be useful.
Fri, 01 Apr 2016 16:40:19 -0700 stack: start indexing at 't1' instead of 't0'
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 01 Apr 2016 16:40:19 -0700] rev 1954
stack: start indexing at 't1' instead of 't0' I think 't0' could have special meaning (eg: before 't1', but still with topic activated) so let's keep room for that. Indexing from 1 is not crazy anyway.
Wed, 30 Mar 2016 23:58:30 -0700 commit: wrap "commitstatus" to take topic into account
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 23:58:30 -0700] rev 1953
commit: wrap "commitstatus" to take topic into account The "created new head" message was appearing for every single commit made on a topic. It should now properly only appears when a new head is actually created on a topic.
Wed, 30 Mar 2016 23:55:31 -0700 uisetup: add call to 'topicmap.modsetup'
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 23:55:31 -0700] rev 1952
uisetup: add call to 'topicmap.modsetup' this was forgotten in 99c1a26abf3f. Tests did not broke because the wrapping of cg.apply only have performance impact (cache warmup).
Wed, 30 Mar 2016 22:33:06 -0700 uisetup: move all remaining wrapping into uisetup
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 22:33:06 -0700] rev 1951
uisetup: move all remaining wrapping into uisetup All our wrapping is now properly done at uisetup time. Hooray.
Wed, 30 Mar 2016 22:31:24 -0700 topicmap: move 'cgapply' wrapping into the topicmap module
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 22:31:24 -0700] rev 1950
topicmap: move 'cgapply' wrapping into the topicmap module More gathering of related logic.
Wed, 30 Mar 2016 22:25:17 -0700 topicmap: move the 'usetopicmap' context manager into the topicmap module
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 22:25:17 -0700] rev 1949
topicmap: move the 'usetopicmap' context manager into the topicmap module There is no good reason to not have it gathered with the rest.
Wed, 30 Mar 2016 22:05:49 -0700 patch: move setup of import/export logic into a function
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 22:05:49 -0700] rev 1948
patch: move setup of import/export logic into a function The function is now called during uisetup.
Wed, 30 Mar 2016 22:04:25 -0700 patch: remove version compatibility check
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 22:04:25 -0700] rev 1947
patch: remove version compatibility check We don't support anything under 3.7.
Wed, 30 Mar 2016 22:03:44 -0700 patch: document the section about import/export
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 22:03:44 -0700] rev 1946
patch: document the section about import/export
Wed, 30 Mar 2016 22:02:52 -0700 patch: move import/export wrapping close to the function definition
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 22:02:52 -0700] rev 1945
patch: move import/export wrapping close to the function definition This gather similar logic together.
Wed, 30 Mar 2016 21:53:55 -0700 discovery: move all setup into a 'modsetup' function
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 21:53:55 -0700] rev 1944
discovery: move all setup into a 'modsetup' function The various wrappings are moved into a function that live in the module and the function is now properly called during 'uisetup'.
Wed, 30 Mar 2016 03:22:50 -0700 revset: add a ui argument to 'modsetup'
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 03:22:50 -0700] rev 1943
revset: add a ui argument to 'modsetup' This is a gratuitous change for consistency with the function that use it.
Wed, 30 Mar 2016 03:21:44 -0700 revset: run 'modsetup' at uisetup time
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 03:21:44 -0700] rev 1942
revset: run 'modsetup' at uisetup time We are slowly moving away from module time wrapping. These thing should be done in the dedicated 'setup' method called by Mercurial.
Wed, 30 Mar 2016 03:20:16 -0700 destination: rename 'setupdest' to 'modsetup'
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 03:20:16 -0700] rev 1941
destination: rename 'setupdest' to 'modsetup' the topic.revset module use 'modsetup' as a name for its setup function. It looks like a good name, lets unify names toward that.
Wed, 30 Mar 2016 03:16:19 -0700 destination: document 'setupdest'
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 03:16:19 -0700] rev 1940
destination: document 'setupdest' Let's make the role of this function clear.
Wed, 30 Mar 2016 03:15:47 -0700 destination: add a ui argument to 'setupdest'
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 03:15:47 -0700] rev 1939
destination: add a ui argument to 'setupdest' This is a gratuitous change for consistency.
Wed, 30 Mar 2016 03:12:43 -0700 destination: make sure 'setupdest' is the latest function in the module
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 03:12:43 -0700] rev 1938
destination: make sure 'setupdest' is the latest function in the module Let's introduce some consistency, end of module seems fine.
Wed, 30 Mar 2016 03:45:29 -0700 topicmap: move to new style import
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 03:45:29 -0700] rev 1937
topicmap: move to new style import This unify with the new core Mercurial usage and this will make future changes to the imports easier to track.
Wed, 30 Mar 2016 03:45:18 -0700 stack: move to new style import
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 03:45:18 -0700] rev 1936
stack: move to new style import This unify with the new core Mercurial usage and this will make future changes to the imports easier to track.
Wed, 30 Mar 2016 03:45:10 -0700 revset: move to new style import
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 03:45:10 -0700] rev 1935
revset: move to new style import This unify with the new core Mercurial usage and this will make future changes to the imports easier to track.
Wed, 30 Mar 2016 03:44:59 -0700 discovery: move to new style import
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 03:44:59 -0700] rev 1934
discovery: move to new style import This unify with the new core Mercurial usage and this will make future changes to the imports easier to track.
Wed, 30 Mar 2016 03:44:47 -0700 destination: move to new style import
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 03:44:47 -0700] rev 1933
destination: move to new style import This unify with the new core Mercurial usage and this will make future changes to the imports easier to track.
Wed, 30 Mar 2016 03:44:37 -0700 init: move to new style import
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 03:44:37 -0700] rev 1932
init: move to new style import This unify with the new core Mercurial usage and this will make future changes to the imports easier to track.
Wed, 30 Mar 2016 03:56:14 -0700 test: disable the new style rendering for "missing parent"
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 30 Mar 2016 03:56:14 -0700] rev 1931
test: disable the new style rendering for "missing parent" The style kicks in when we display a partial tree. Supporting test running both 3.7 and default with this is painful, we disable the new feature for now.
Mon, 21 Mar 2016 21:39:14 -0700 tests: add pyflakes test
Sean Farley <sean@farley.io> [Mon, 21 Mar 2016 21:39:14 -0700] rev 1930
tests: add pyflakes test
Mon, 28 Mar 2016 00:50:36 -0700 setup: make sure we use the imported module
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 28 Mar 2016 00:50:36 -0700] rev 1929
setup: make sure we use the imported module This prevent pyflakes to complains about it (and work around any possible demand import magic. I'm not sure why we do this important dance at all, but I'm leaving it there in doubt.
Mon, 21 Mar 2016 21:38:56 -0700 topicmap: whitespace
Sean Farley <sean@farley.io> [Mon, 21 Mar 2016 21:38:56 -0700] rev 1928
topicmap: whitespace
Mon, 28 Mar 2016 00:47:14 -0700 topiccache: directly instantiate a topiccache object when reading
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 28 Mar 2016 00:47:14 -0700] rev 1927
topiccache: directly instantiate a topiccache object when reading There is no need to rely on a temporary monkey patching.
Tue, 22 Mar 2016 15:29:05 -0700 readme: fix instruction to enable topic
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 22 Mar 2016 15:29:05 -0700] rev 1926
readme: fix instruction to enable topic We moved the source code in 85390446f8c1 but we messed up the readme update. We are fixing it here.
Mon, 21 Mar 2016 21:30:14 -0700 stack: whitespace
Sean Farley <sean@farley.io> [Mon, 21 Mar 2016 21:30:14 -0700] rev 1925
stack: whitespace
Mon, 21 Mar 2016 21:29:35 -0700 stack: remove unused import
Sean Farley <sean@farley.io> [Mon, 21 Mar 2016 21:29:35 -0700] rev 1924
stack: remove unused import
Mon, 21 Mar 2016 21:28:29 -0700 revset: add missing imports
Sean Farley <sean@farley.io> [Mon, 21 Mar 2016 21:28:29 -0700] rev 1923
revset: add missing imports
Mon, 21 Mar 2016 21:28:12 -0700 revset: whitespace
Sean Farley <sean@farley.io> [Mon, 21 Mar 2016 21:28:12 -0700] rev 1922
revset: whitespace
Mon, 21 Mar 2016 21:26:45 -0700 discovery: whitespace
Sean Farley <sean@farley.io> [Mon, 21 Mar 2016 21:26:45 -0700] rev 1921
discovery: whitespace
Mon, 21 Mar 2016 21:25:04 -0700 discovery: removed unused oldgetitem
Sean Farley <sean@farley.io> [Mon, 21 Mar 2016 21:25:04 -0700] rev 1920
discovery: removed unused oldgetitem
Mon, 21 Mar 2016 21:07:41 -0700 setup: break long line
Sean Farley <sean@farley.io> [Mon, 21 Mar 2016 21:07:41 -0700] rev 1919
setup: break long line
Sat, 19 Mar 2016 14:15:57 -0700 init: indent correctly
Sean Farley <sean@farley.io> [Sat, 19 Mar 2016 14:15:57 -0700] rev 1918
init: indent correctly
Sat, 19 Mar 2016 14:15:45 -0700 init: whitespace fixups
Sean Farley <sean@farley.io> [Sat, 19 Mar 2016 14:15:45 -0700] rev 1917
init: whitespace fixups
Sat, 19 Mar 2016 14:09:59 -0700 init: remove unused module
Sean Farley <sean@farley.io> [Sat, 19 Mar 2016 14:09:59 -0700] rev 1916
init: remove unused module
Fri, 18 Mar 2016 15:03:40 +0000 spelling: histedit
timeless@gmail.com [Fri, 18 Mar 2016 15:03:40 +0000] rev 1915
spelling: histedit
Fri, 18 Mar 2016 15:00:58 +0000 spelling: changeset
timeless@gmail.com [Fri, 18 Mar 2016 15:00:58 +0000] rev 1914
spelling: changeset
Fri, 18 Mar 2016 08:14:45 -0700 readme: remove the part about 3.7 and hgext3rd
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 18 Mar 2016 08:14:45 -0700] rev 1913
readme: remove the part about 3.7 and hgext3rd We are using direct path already so we don't need any magic here. The 'hgext3rd.'bit is only required (for 3.7) when the module is installed and we rely on sys.path to find it.
Tue, 22 Mar 2016 00:19:14 -0700 merge with other duplicate head
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 22 Mar 2016 00:19:14 -0700] rev 1912
merge with other duplicate head
Thu, 17 Mar 2016 09:14:57 -0700 histedit: restrict default edited set to current topic when possible
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 17 Mar 2016 09:14:57 -0700] rev 1911
histedit: restrict default edited set to current topic when possible If we have an active topic, we restrict the edit within that topic.
Thu, 17 Mar 2016 09:13:12 -0700 stack: add a 'stack()' revset
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 17 Mar 2016 09:13:12 -0700] rev 1910
stack: add a 'stack()' revset We give access to the list of relevant commit with a revset. Benefits over 'topic(.)' are the filtering of obsolete changeset and the reordering (to topological as-in unstability were resolved).
Mon, 14 Mar 2016 23:37:58 +0000 stack: display the base of the stack
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Mar 2016 23:37:58 +0000] rev 1909
stack: display the base of the stack Displaying the first parent of the stack seems useful. I'm even tempted to call it 't0' and have the topic still active when 'hg up t0' is used to move to the base. As a side effect we gain a way to denote that the stack is not linear. I'm not super convinced that it is the right way to display it, but this is better than no information.
Mon, 14 Mar 2016 19:22:21 +0000 stack: add some default color configuration
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Mar 2016 19:22:21 +0000] rev 1908
stack: add some default color configuration We can make the output more insightful with some default colors, let's do it.
Mon, 14 Mar 2016 19:03:32 +0000 stack: add basic formatter and label support
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Mar 2016 19:03:32 +0000] rev 1907
stack: add basic formatter and label support This still is not great, especially I would like '-T' to be able to control how we display the changeset, but this is useful progress.
Mon, 14 Mar 2016 18:43:23 +0000 stack: show the currently active changeset and unstable ones
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Mar 2016 18:43:23 +0000] rev 1906
stack: show the currently active changeset and unstable ones Still super basic, but give a basic idea of the feature. We use both symbols and explicit text because symbols are cool but text is more explicit
Mon, 14 Mar 2016 18:40:00 +0000 stack: add "t" prefix to index in the output
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Mar 2016 18:40:00 +0000] rev 1905
stack: add "t" prefix to index in the output This make the existance and meaning of "t2" reference clearer.
Mon, 14 Mar 2016 18:39:19 +0000 stack: allow to refer to changeset using "t2" form
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Mar 2016 18:39:19 +0000] rev 1904
stack: allow to refer to changeset using "t2" form hg up "t0" is seen as "update to the first changeset of my current topic". Eventually we'll drop the "t2" form in favor of the planned generic indexing operator '.{t2}'.
Tue, 15 Mar 2016 17:26:57 +0000 topic: don't take topic into account when pushing to non-topic repo
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 15 Mar 2016 17:26:57 +0000] rev 1903
topic: don't take topic into account when pushing to non-topic repo Previously, pushing to a non-publishing repository without topic support would wrongfully use topic when searching for new heads.
Wed, 16 Mar 2016 12:14:20 -0700 destination: fix 'hg pull --rebase'
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 16 Mar 2016 12:14:20 -0700] rev 1902
destination: fix 'hg pull --rebase' I'm not sure why sometime functions do not have func_default but this is easy to fix. I've added a test to catch such stuffs it in the future.
Thu, 17 Mar 2016 09:12:18 -0700 packaging: fix setup.py and install as hgext3rd.topic
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 17 Mar 2016 09:12:18 -0700] rev 1901
packaging: fix setup.py and install as hgext3rd.topic This changeset is doing two things (gasp): - It fixes various errors in the setup.py - It move the topic source and install into hgext3rd.topic. This last part (code source move) use hgext3rd as namespace package to prevent installation nightmare. This won't be officially supported until Mercurial 3.8, but in the meantime, 3.7 user can enable it using the full package name: [extensions] hgext3rd.topic= Thanks goes to Julien Cristau <julien.cristau@logilab.fr> for the initial version of this.
Wed, 16 Mar 2016 12:14:20 -0700 destination: fix 'hg pull --rebase'
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 16 Mar 2016 12:14:20 -0700] rev 1900
destination: fix 'hg pull --rebase' I'm not sure why sometime functions does not have func_default but this is easy to fix. I've added a test to catch such stuff it in the future.
Tue, 15 Mar 2016 17:25:18 +0000 discovery: remove a spurious print
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 15 Mar 2016 17:25:18 +0000] rev 1899
discovery: remove a spurious print
Mon, 14 Mar 2016 18:24:33 +0000 task: add index number to the output
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Mar 2016 18:24:33 +0000] rev 1898
task: add index number to the output We are doing to use these number for easy movement in later changesets. The numbering will probably evolve over time but this is a good start.
Mon, 14 Mar 2016 18:11:52 +0000 stack: fix printing order in case of unstability
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Mar 2016 18:11:52 +0000] rev 1897
stack: fix printing order in case of unstability The stack was displayed using revision number order, this give good result in the simple case (straight stack) but give bad result when the stack is not linear because of unstability. We fixes it by reusing the evolution logic for sorting. As we do not live next to evolution yet, we duplicated this logic for now.
Mon, 14 Mar 2016 17:48:31 +0000 stack: exclude obsolete changeset from the set
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Mar 2016 17:48:31 +0000] rev 1896
stack: exclude obsolete changeset from the set We care about relevant changeset, obsolete have a new version somewhere and we don't care about the old one in our display. In case of unstability, the ordering used is still wrong.
Mon, 14 Mar 2016 17:37:39 +0000 stack: add a very first version of stack display with 'hg topic --list'
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Mar 2016 17:37:39 +0000] rev 1895
stack: add a very first version of stack display with 'hg topic --list' This mark the first step toward a set of feature dedicated to displaying and moving within the current stack of work. Everything is still super basic so don't look too much at the feature. The goals of this changeset are: * having a flag to trigger the feature * having a basic (imperfect selection mechanism)
Mon, 14 Mar 2016 17:09:02 +0000 topic: get 'Abort' from error, not 'util'
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Mar 2016 17:09:02 +0000] rev 1894
topic: get 'Abort' from error, not 'util' The class live in 'mercurial.error'.
Mon, 14 Mar 2016 21:22:56 -0400 Makefile: meant tests-@ not tests-tip
Augie Fackler <raf@durin42.com> [Mon, 14 Mar 2016 21:22:56 -0400] rev 1893
Makefile: meant tests-@ not tests-tip
Sun, 13 Mar 2016 12:29:43 +0000 update: change default update destination to take topic in account
Pierre-Yves David <pierre-yves.david@fb.com> [Sun, 13 Mar 2016 12:29:43 +0000] rev 1892
update: change default update destination to take topic in account When within a branch update to ngtip(branch). When within a topic update to the top topic.
Sun, 13 Mar 2016 13:07:54 +0000 rebase: test default rebase destination behavior
Pierre-Yves David <pierre-yves.david@fb.com> [Sun, 13 Mar 2016 13:07:54 +0000] rev 1891
rebase: test default rebase destination behavior In future mercurial 3.8, rebase and merge share the same destination logic. So if merge work, rebase should work as well. However, we double test it to be sure. Especially, in 3.7 the logic is not shared so we have to introduce an extra hack to share it in this case.
Sun, 13 Mar 2016 23:44:04 +0000 topicmap: write and read format from disc
Pierre-Yves David <pierre-yves.david@fb.com> [Sun, 13 Mar 2016 23:44:04 +0000] rev 1890
topicmap: write and read format from disc To prevent too awful performance we allow writing and reading topicmap cache. This is done with a lot of code duplication from core because core is not extensible enough.
Mon, 14 Mar 2016 00:15:54 +0000 topicmap: ensure that 'served' view is updated with topicmap
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Mar 2016 00:15:54 +0000] rev 1889
topicmap: ensure that 'served' view is updated with topicmap There is multiple place that explicitly update the 'served' branchmap to ensure it stay up to date. We ensure it use the proper topicmap in this case.
Mon, 14 Mar 2016 00:12:22 +0000 topicmap: move the monkey patching into a context manager
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Mar 2016 00:12:22 +0000] rev 1888
topicmap: move the monkey patching into a context manager There is a couple of other place doing branchmap/topicmap update (of the served set), we'll have to set the monkey patching for them. This changeset is just doing the move to a context manager to make sure it is correct.
Sat, 12 Mar 2016 18:42:16 +0000 push: hackish handeling of new branch head from phase move
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 12 Mar 2016 18:42:16 +0000] rev 1887
push: hackish handeling of new branch head from phase move The current head checking mechanism is not expecting "head change" from phase movement. Topic allows that, changeset with a topic moving to public can create a new head. We introduce a hack to double check that no head were added at the transaction level to work around this.
Sat, 12 Mar 2016 18:19:27 +0000 push: allow pushing new topic to non-publishing server by default
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 12 Mar 2016 18:19:27 +0000] rev 1886
push: allow pushing new topic to non-publishing server by default This improves and fix the behavior change introduced by the new "topicmap". * Topics are properly ignored when pushing to a publishing server, * pushing new topics is allowed without --force a non-publishing server, * Pushing extra heads on a topic requires --force. Create of new head on a branch by phase movement is not properly detected for now. We'll improve that part in a later changesets. There is more awful monkey patching going on. We'll have to refactor core to get rid of them.
Sat, 12 Mar 2016 15:36:17 +0000 topic: take topic in account for all branch head computation
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 12 Mar 2016 15:36:17 +0000] rev 1885
topic: take topic in account for all branch head computation This changeset introduce a "topicmap" that is tracking not just the head of all branches, but the heads of all branch+topic pair. Including the head of the part of the branch without any topic. In practice this means that BRANCHNAME now resolve to the tipmost part for the branch without topic and impact various other logic like head checking during push and default destination for update and merge (these aspect will need adjustment in later changesets). The on-the-fly-temporary-monkey-patching process is pretty horrible, but allow to move forward without waiting on having core patched. We use 'branch:topic' as the branchmap key, this is a small and easy hack that help use a lot for (future) support of heads discovery/checking and on disc cache. I'm not sure it is worthwhile to improve this until an implementation into core. Note that this changeset change the branchmap in all cases, including during exchange, see next changeset for improved behavior. We also currently have the on-disk cache disabled because the core branchmap is lacking phase information in its cache key. This will get done in a later changesets
Mon, 14 Mar 2016 20:18:09 -0400 testedwith: declare compatibility with Mercurial 3.7
Augie Fackler <raf@durin42.com> [Mon, 14 Mar 2016 20:18:09 -0400] rev 1884
testedwith: declare compatibility with Mercurial 3.7
Mon, 14 Mar 2016 20:17:18 -0400 Makefile: update all-version-tests to explicitly test 3.7
Augie Fackler <raf@durin42.com> [Mon, 14 Mar 2016 20:17:18 -0400] rev 1883
Makefile: update all-version-tests to explicitly test 3.7
Mon, 14 Mar 2016 20:13:44 -0400 hgignore: also ignore testtimes
Augie Fackler <raf@durin42.com> [Mon, 14 Mar 2016 20:13:44 -0400] rev 1882
hgignore: also ignore testtimes
Mon, 14 Mar 2016 20:12:39 -0400 killdaemons: discard now that it's unused
Augie Fackler <raf@durin42.com> [Mon, 14 Mar 2016 20:12:39 -0400] rev 1881
killdaemons: discard now that it's unused
Mon, 14 Mar 2016 14:38:40 +0000 test: drop custom run-tests.py
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Mar 2016 14:38:40 +0000] rev 1880
test: drop custom run-tests.py We should use the one provided by Mercurial core directly.
Mon, 14 Mar 2016 20:11:47 -0400 Makefile: rework running of tests
Augie Fackler <raf@durin42.com> [Mon, 14 Mar 2016 20:11:47 -0400] rev 1879
Makefile: rework running of tests This makes running tests easier without depending on our own copy of run-tests.py (though I'd still prefer to keep that around.)
Sat, 12 Mar 2016 12:36:25 +0000 compat: adapt to change in mercurial core
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 12 Mar 2016 12:36:25 +0000] rev 1878
compat: adapt to change in mercurial core The code around merge destination have been changed in core, we do some basic adaptation to make sure we don't crash. Further rework to adapt//take advantage of core change would probably be useful but this is not the point of this commit.
Thu, 31 Dec 2015 11:23:19 -0500 topic: handle merge.update function signature change
Augie Fackler <raf@durin42.com> [Thu, 31 Dec 2015 11:23:19 -0500] rev 1877
topic: handle merge.update function signature change I think this is backwards compatible with how it used to be called, but I didn't worry about it too much either.
Fri, 11 Dec 2015 13:12:23 -0500 Merge.
Augie Fackler <raf@durin42.com> [Fri, 11 Dec 2015 13:12:23 -0500] rev 1876
Merge.
Fri, 11 Dec 2015 13:09:29 -0500 test-topic-dest: test fixes I should have put in the previous change
Augie Fackler <raf@durin42.com> [Fri, 11 Dec 2015 13:09:29 -0500] rev 1875
test-topic-dest: test fixes I should have put in the previous change I split a bigger change from marmoute that included some rebase support that I wanted to discuss more, but I didn't correctly commit my fixes to the tests before pushing. Oops.
Fri, 11 Dec 2015 12:53:20 -0500 topic: fix changing topics of commits that have an amend_source
Augie Fackler <raf@durin42.com> [Fri, 11 Dec 2015 12:53:20 -0500] rev 1874
topic: fix changing topics of commits that have an amend_source Includes a test for this specific case, but we should probably spend more time squinting at the interactions between the current topic wrapper function and commitctx for memctx instances.
Fri, 11 Dec 2015 12:53:38 -0500 topic: remove useless call to c.parents()
Augie Fackler <raf@durin42.com> [Fri, 11 Dec 2015 12:53:38 -0500] rev 1873
topic: remove useless call to c.parents()
Fri, 11 Dec 2015 12:56:23 -0500 topic: fix up change logic a little and add debug logging
Augie Fackler <raf@durin42.com> [Fri, 11 Dec 2015 12:56:23 -0500] rev 1872
topic: fix up change logic a little and add debug logging
Wed, 21 Oct 2015 01:09:15 +0200 merge: use topic to pick default destination
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 21 Oct 2015 01:09:15 +0200] rev 1871
merge: use topic to pick default destination If the topic have multiple heads, reduce that. Otherwise, pick the branch we are on.
Wed, 21 Oct 2015 01:12:32 +0200 topic: introduce a 'ngtip' concept
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 21 Oct 2015 01:12:32 +0200] rev 1870
topic: introduce a 'ngtip' concept The concept is to be massively used in naming and default destination logic. The name is horrible so that people find a better one.
Thu, 08 Oct 2015 21:09:47 -0700 template: test that topic is accessible through template
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 08 Oct 2015 21:09:47 -0700] rev 1869
template: test that topic is accessible through template This comes free with the namespace feature but it is good to have.
Fri, 23 Oct 2015 13:40:44 +0100 test: adapt to newer mercurial
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 23 Oct 2015 13:40:44 +0100] rev 1868
test: adapt to newer mercurial
Thu, 08 Oct 2015 20:43:15 -0700 patch: import topic from patch header
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 08 Oct 2015 20:43:15 -0700] rev 1867
patch: import topic from patch header If the used Mercurial supports it, we import topic from patch headers.
Thu, 08 Oct 2015 20:42:26 -0700 patch: add topic to exported patch
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 08 Oct 2015 20:42:26 -0700] rev 1866
patch: add topic to exported patch If used Mercurial supports it, we add a topic header to patches.
Wed, 14 Oct 2015 12:09:11 -0400 topic: work around stringmatcher moving during development of hg 3.6
Augie Fackler <raf@durin42.com> [Wed, 14 Oct 2015 12:09:11 -0400] rev 1865
topic: work around stringmatcher moving during development of hg 3.6
Wed, 30 Sep 2015 18:06:42 -0400 topic: allow use of topic(.) to match the p1 topic
Augie Fackler <raf@durin42.com> [Wed, 30 Sep 2015 18:06:42 -0400] rev 1864
topic: allow use of topic(.) to match the p1 topic As far as I can tell this matches the behavior of branch(.) in core hg in tht it matches p1's value rather than the wdir value.
Wed, 30 Sep 2015 18:05:27 -0400 topic: fix missing error import
Augie Fackler <raf@durin42.com> [Wed, 30 Sep 2015 18:05:27 -0400] rev 1863
topic: fix missing error import
Fri, 19 Jun 2015 16:23:29 -0500 amend: allow clearing topics on amend
Matt Mackall <mpm@selenic.com> [Fri, 19 Jun 2015 16:23:29 -0500] rev 1862
amend: allow clearing topics on amend
Fri, 19 Jun 2015 16:16:42 -0500 changectx: add topic method
Matt Mackall <mpm@selenic.com> [Fri, 19 Jun 2015 16:16:42 -0500] rev 1861
changectx: add topic method
Fri, 19 Jun 2015 16:13:16 -0500 topics: consistently use empty string instead of None
Matt Mackall <mpm@selenic.com> [Fri, 19 Jun 2015 16:13:16 -0500] rev 1860
topics: consistently use empty string instead of None This agrees with repo.currenttopic which uses ''. A subsequent patch is going to provide a context topic method that returns the empty string.
Fri, 19 Jun 2015 14:18:34 -0500 topics: drop debugging print in rebase
Matt Mackall <mpm@selenic.com> [Fri, 19 Jun 2015 14:18:34 -0500] rev 1859
topics: drop debugging print in rebase
Mon, 15 Jun 2015 17:29:07 -0500 topics: allow commits that only change topic (issue4725)
Matt Mackall <mpm@selenic.com> [Mon, 15 Jun 2015 17:29:07 -0500] rev 1858
topics: allow commits that only change topic (issue4725) This allows amend to change topics. It also matches the behavior of branches.
Mon, 15 Jun 2015 16:56:44 -0500 topics: add listnames hook so completion works
Matt Mackall <mpm@selenic.com> [Mon, 15 Jun 2015 16:56:44 -0500] rev 1857
topics: add listnames hook so completion works
Thu, 18 Jun 2015 15:46:26 -0400 rewrite: use a lock and transaction as spotted by devel warnings
Augie Fackler <augie@google.com> [Thu, 18 Jun 2015 15:46:26 -0400] rev 1856
rewrite: use a lock and transaction as spotted by devel warnings
Fri, 12 Jun 2015 16:49:46 -0500 topics: only apply topic to commits of the working copy
Matt Mackall <mpm@selenic.com> [Fri, 12 Jun 2015 16:49:46 -0500] rev 1855
topics: only apply topic to commits of the working copy
Fri, 12 Jun 2015 16:41:10 -0500 rebase: teach rebase how to copy topics
Matt Mackall <mpm@selenic.com> [Fri, 12 Jun 2015 16:41:10 -0500] rev 1854
rebase: teach rebase how to copy topics
Fri, 12 Jun 2015 16:39:39 -0500 topic: wrap the underlying update function rather than the command
Matt Mackall <mpm@selenic.com> [Fri, 12 Jun 2015 16:39:39 -0500] rev 1853
topic: wrap the underlying update function rather than the command This more properly manages the updates done by things like rebase.
Wed, 10 Jun 2015 17:52:07 -0500 commit: add a topic field to the in-editor commit text
Matt Mackall <mpm@selenic.com> [Wed, 10 Jun 2015 17:52:07 -0500] rev 1852
commit: add a topic field to the in-editor commit text
Wed, 10 Jun 2015 17:40:50 -0500 topic: only require obsolete support for --change
Matt Mackall <mpm@selenic.com> [Wed, 10 Jun 2015 17:40:50 -0500] rev 1851
topic: only require obsolete support for --change
Wed, 10 Jun 2015 17:13:15 -0500 commit: add a --topic flag
Matt Mackall <mpm@selenic.com> [Wed, 10 Jun 2015 17:13:15 -0500] rev 1850
commit: add a --topic flag
Wed, 10 Jun 2015 16:44:49 -0500 topic: note when switching topics
Matt Mackall <mpm@selenic.com> [Wed, 10 Jun 2015 16:44:49 -0500] rev 1849
topic: note when switching topics
Wed, 10 Jun 2015 16:32:20 -0500 summary: add topic summary hook
Matt Mackall <mpm@selenic.com> [Wed, 10 Jun 2015 16:32:20 -0500] rev 1848
summary: add topic summary hook
Wed, 10 Jun 2015 16:23:56 -0500 topics: add command summary
Matt Mackall <mpm@selenic.com> [Wed, 10 Jun 2015 16:23:56 -0500] rev 1847
topics: add command summary
Wed, 10 Jun 2015 16:20:05 -0500 docs: fix format of extension docstring
Matt Mackall <mpm@selenic.com> [Wed, 10 Jun 2015 16:20:05 -0500] rev 1846
docs: fix format of extension docstring
Wed, 10 Jun 2015 16:13:20 -0400 constants: extract key for extra into a constant
Augie Fackler <augie@google.com> [Wed, 10 Jun 2015 16:13:20 -0400] rev 1845
constants: extract key for extra into a constant It might be prudent to prefix it, and regardless it was bugging me to have it repeated everywhere.
Wed, 10 Jun 2015 15:03:39 -0400 topic: add ability to change topic of non-public changes
Augie Fackler <augie@google.com> [Wed, 10 Jun 2015 15:03:39 -0400] rev 1844
topic: add ability to change topic of non-public changes This is a little crude, but it gets the job done. You probably don't want to use this without evolution for now.
Wed, 10 Jun 2015 15:26:50 -0400 revset: add a topic() revset for querying topics
Augie Fackler <augie@google.com> [Wed, 10 Jun 2015 15:26:50 -0400] rev 1843
revset: add a topic() revset for querying topics
Wed, 10 Jun 2015 15:01:36 -0400 topic: disallow use of topics without obsolete enabled
Augie Fackler <augie@google.com> [Wed, 10 Jun 2015 15:01:36 -0400] rev 1842
topic: disallow use of topics without obsolete enabled This is a prelude to allowing changing topics. The experience will be disastrous without obsolete markers, so let's just preempt any potential problems.
Wed, 10 Jun 2015 14:59:46 -0400 topic: use repo.set() where we need a changectx anyway
Augie Fackler <augie@google.com> [Wed, 10 Jun 2015 14:59:46 -0400] rev 1841
topic: use repo.set() where we need a changectx anyway I always forget repo.set() exists and use repo.revs(). Sigh.
Wed, 10 Jun 2015 14:59:05 -0400 testlib: enable rebase and obsolete for easier testing
Augie Fackler <augie@google.com> [Wed, 10 Jun 2015 14:59:05 -0400] rev 1840
testlib: enable rebase and obsolete for easier testing
Wed, 20 May 2015 21:23:28 -0400 Initial dumb version of topics.
Augie Fackler <augie@google.com> [Wed, 20 May 2015 21:23:28 -0400] rev 1839
Initial dumb version of topics.
Tue, 28 Feb 2017 18:21:23 +0100 serveronly: deduplicate code with the main evolve extension
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 18:21:23 +0100] rev 1838
serveronly: deduplicate code with the main evolve extension Now that 'serveonly' is a sub module of evolve. We can access its content in evolve. As a result we stop duplicating code all common parts are defined in the 'serveronly' module and imported by evolve when needed.
Tue, 28 Feb 2017 16:12:34 +0100 serveronly: clean up imports
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 16:12:34 +0100] rev 1837
serveronly: clean up imports remove unused one and arrange them
Tue, 28 Feb 2017 14:31:28 +0100 compat: just use '_callcompressable'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 14:31:28 +0100] rev 1836
compat: just use '_callcompressable' That API is available in all version we supports.
Tue, 28 Feb 2017 14:31:18 +0100 compat: drop bookmark compatibility layer
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 14:31:18 +0100] rev 1835
compat: drop bookmark compatibility layer All the version we now supports have the 'new' API.
Tue, 28 Feb 2017 14:29:36 +0100 compat: drop compat for older wireproto implementation
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 14:29:36 +0100] rev 1834
compat: drop compat for older wireproto implementation We only support Mercurial version with these attributes.
Tue, 28 Feb 2017 14:28:54 +0100 compat: always use the strip revset from core
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 14:28:54 +0100] rev 1833
compat: always use the strip revset from core We only support versions that defines it.
Tue, 28 Feb 2017 14:28:23 +0100 compat: drop support for ancestral pushop object
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 14:28:23 +0100] rev 1832
compat: drop support for ancestral pushop object Pushoperation object have a 'cgresult' attribute in all the versions we support.
Tue, 28 Feb 2017 14:27:54 +0100 compat: drop compatibility layer around update
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 14:27:54 +0100] rev 1831
compat: drop compatibility layer around update We now support only versions with the new API.
Tue, 28 Feb 2017 14:27:08 +0100 compat: drop compatibility layer for 'tryimportone'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 14:27:08 +0100] rev 1830
compat: drop compatibility layer for 'tryimportone' Return is now homogeneous for all the version we support.
Tue, 28 Feb 2017 14:25:35 +0100 compat: drop superfluous summary output
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 14:25:35 +0100] rev 1829
compat: drop superfluous summary output All versions we support issues this output.
Tue, 28 Feb 2017 14:24:04 +0100 compat: drop compatibility layer around memctx
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 14:24:04 +0100] rev 1828
compat: drop compatibility layer around memctx The version we support all have the same API now.
Tue, 28 Feb 2017 14:22:25 +0100 compat: drop handling of ancestral 'helploader' caller
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 14:22:25 +0100] rev 1827
compat: drop handling of ancestral 'helploader' caller We only support recent only version on Mercurial now.
Tue, 28 Feb 2017 14:22:05 +0100 compat: drop hack around a 'graft' signature change
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 14:22:05 +0100] rev 1826
compat: drop hack around a 'graft' signature change We only support recent only version of Mercurial now.
Tue, 28 Feb 2017 14:21:17 +0100 evolve: proactively detect bad version early
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 14:21:17 +0100] rev 1825
evolve: proactively detect bad version early The extensions have been providing such error to the user for some time. So we keep this explicit check (instead of some later errors). The check is update to match out new version constraint.
Tue, 01 Nov 2016 16:21:16 +0100 evolve: drop support for version older than 3.8
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 01 Nov 2016 16:21:16 +0100] rev 1824
evolve: drop support for version older than 3.8 The support for 'hgext3rd' was introduced in 3.8. Dropping support for older version seems reasonable.
Tue, 28 Feb 2017 13:27:04 +0100 evolve: cleanup imports
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 13:27:04 +0100] rev 1823
evolve: cleanup imports Just rearrange imports to a new/clearer style.
Tue, 28 Feb 2017 17:27:44 +0100 merge with stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 17:27:44 +0100] rev 1822
merge with stable
Tue, 28 Feb 2017 17:19:31 +0100 merge with mercurial-3.5 mercurial-3.4
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 17:19:31 +0100] rev 1821
merge with mercurial-3.5
Tue, 28 Feb 2017 17:17:40 +0100 merge with mercurial-3.6 mercurial-3.5
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 17:17:40 +0100] rev 1820
merge with mercurial-3.6
Tue, 28 Feb 2017 17:15:21 +0100 merge with mercurial-3.7 mercurial-3.6
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 17:15:21 +0100] rev 1819
merge with mercurial-3.7
Tue, 28 Feb 2017 17:11:51 +0100 merge with mercurial-3.8 mercurial-3.7
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 17:11:51 +0100] rev 1818
merge with mercurial-3.8
Tue, 28 Feb 2017 17:08:14 +0100 merge with mercurial-3.9 mercurial-3.8
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 17:08:14 +0100] rev 1817
merge with mercurial-3.9
Tue, 28 Feb 2017 17:04:58 +0100 merge with mercurial-4.0 mercurial-3.9
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 17:04:58 +0100] rev 1816
merge with mercurial-4.0
Tue, 28 Feb 2017 17:00:17 +0100 merge future 5.6.1 mercurial-4.0
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 17:00:17 +0100] rev 1815
merge future 5.6.1
Tue, 28 Feb 2017 17:22:21 +0100 Added tag 5.6.1 for changeset 70694b2621ba stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 17:22:21 +0100] rev 1814
Added tag 5.6.1 for changeset 70694b2621ba
Tue, 28 Feb 2017 17:21:56 +0100 update debian changelog stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 17:21:56 +0100] rev 1813
update debian changelog
Thu, 02 Feb 2017 16:33:17 +0100 evolve: extend API fix from 25254b2f8116 to another relevant case stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Feb 2017 16:33:17 +0100] rev 1812
evolve: extend API fix from 25254b2f8116 to another relevant case For some reason, only part of this API change got fixes. Test did not caught this because 'False' is a valid revision number (0) and update force did not mind using it as an ancestors. The API changed in Mercurial 43c00ca887d1
Tue, 01 Nov 2016 16:19:33 +0100 hgext3rd: drop the last remains of hgext3rd
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 01 Nov 2016 16:19:33 +0100] rev 1811
hgext3rd: drop the last remains of hgext3rd Not that all extensions as moved, we can drop the directory.
Tue, 01 Nov 2016 16:18:21 +0100 hgext3rd: move 'obsolete' as 'evolve.legacy'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 01 Nov 2016 16:18:21 +0100] rev 1810
hgext3rd: move 'obsolete' as 'evolve.legacy' We move that last extension. It seems like we could use the repo upgrade framework for this, but this is another adventure.
Tue, 01 Nov 2016 16:11:50 +0100 hgext3rd: move 'drophack' as 'evolve.hack.drophack'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 01 Nov 2016 16:11:50 +0100] rev 1809
hgext3rd: move 'drophack' as 'evolve.hack.drophack' Yet another extension migrating. Ideally we would implement stripping obsolescence marker in code soon and be able to dispose of this extensions directly. In the mean time this goes into the "hack" namespace.
Tue, 01 Nov 2016 16:07:28 +0100 hgext3rd: move 'simple4server' as 'evolve.serveronly'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 01 Nov 2016 16:07:28 +0100] rev 1808
hgext3rd: move 'simple4server' as 'evolve.serveronly' We also more the server only extension into hgext3rd. We makes it a python sub-module of evolve for two reasons: * less polution in the hgext3rd namespace, * this make it possible to share the code between 'evolve' and 'evolve.serveronly' instead of duplicating it. note that we now install the extension too
Tue, 28 Feb 2017 14:36:18 +0100 hgext3rd: move 'directaccess' and 'inhibit' in 'evolve.hack'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 14:36:18 +0100] rev 1807
hgext3rd: move 'directaccess' and 'inhibit' in 'evolve.hack' We move them in the 'hgext3rd' package. In the same move we put them under the 'evolve' package for clarity. We use a sub-package 'hack' to make their status clearer.
Tue, 28 Feb 2017 15:09:03 +0100 evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 28 Feb 2017 15:09:03 +0100] rev 1806
evolve: move the extensions to 'hgext3rd' We have the 'hgext3rd' as the official place for extension for some time now. We start the big migration. This might break some people setup but this is a necessary step to have evolve easily available through pip.
Tue, 01 Nov 2016 05:42:50 +0100 extensions: drop the old 'pushexperiment' extension
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 01 Nov 2016 05:42:50 +0100] rev 1805
extensions: drop the old 'pushexperiment' extension This extensions predate bundle-2 and their have not been any reason to use it for years.
Wed, 01 Feb 2017 16:23:11 +0100 merge with stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 16:23:11 +0100] rev 1804
merge with stable
Wed, 01 Feb 2017 16:19:58 +0100 Update tag 5.6.0 for changeset e7b6e9c4a5d4 stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 16:19:58 +0100] rev 1803
Update tag 5.6.0 for changeset e7b6e9c4a5d4 There was a small error in the README. The previous tag is fresh and the announcement was sent yet. So I'm exceptionally overwriting the tag.
Wed, 01 Feb 2017 16:19:50 +0100 fix release date in the Readme, stable 5.6.0
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 16:19:50 +0100] rev 1802
fix release date in the Readme, Copy paste error :-/
Wed, 01 Feb 2017 16:17:09 +0100 reopen the default branch
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 16:17:09 +0100] rev 1801
reopen the default branch
Wed, 01 Feb 2017 16:03:39 +0100 merge with 5.6.0 mercurial-3.4
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 16:03:39 +0100] rev 1800
merge with 5.6.0 no extra changes were needed from the mercurial-3.5 branch.
Wed, 01 Feb 2017 15:51:02 +0100 merge with 5.6.0 mercurial-3.5
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 15:51:02 +0100] rev 1799
merge with 5.6.0 no extra changes were needed form the mercurial-3.6 branch.
Wed, 01 Feb 2017 15:45:20 +0100 merge with 5.6.0 mercurial-3.6
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 15:45:20 +0100] rev 1798
merge with 5.6.0 No extra changes were needed from the mercurial-3.7 branch.
Wed, 01 Feb 2017 15:40:51 +0100 merge with 5.6.0 mercurial-3.7
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 15:40:51 +0100] rev 1797
merge with 5.6.0 Not extra change were needed from the mercurial-3.8 branch
Wed, 01 Feb 2017 15:32:59 +0100 merge with 5.6.0 mercurial-3.8
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 15:32:59 +0100] rev 1796
merge with 5.6.0 A minor one line conflict on test output were encountered.
Wed, 01 Feb 2017 15:27:04 +0100 merge with 5.6.0 mercurial-3.9
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 15:27:04 +0100] rev 1795
merge with 5.6.0 No extra changes needed from the 'mercurial-4.' branch.
Wed, 01 Feb 2017 15:15:34 +0100 merge with future 5.6.0 mercurial-4.0
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 15:15:34 +0100] rev 1794
merge with future 5.6.0 There is only minor test output change, 4.0 do not have the "trouble:" wording in there.
Wed, 01 Feb 2017 16:09:40 +0100 Added tag 5.6.0 for changeset 99ede2d77545 stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 16:09:40 +0100] rev 1793
Added tag 5.6.0 for changeset 99ede2d77545
Wed, 01 Feb 2017 16:05:21 +0100 exchange: fix compatibility layer stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 16:05:21 +0100] rev 1792
exchange: fix compatibility layer We forgot a return into some compatibility layer. This is now fixed.
Wed, 01 Feb 2017 15:09:06 +0100 open the mercurial-3.9 compat branch mercurial-4.0
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 15:09:06 +0100] rev 1791
open the mercurial-3.9 compat branch
Wed, 01 Feb 2017 15:08:03 +0100 prepare release 5.6.0 stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 15:08:03 +0100] rev 1790
prepare release 5.6.0
Wed, 01 Feb 2017 15:07:30 +0100 debian: fix version format stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 15:07:30 +0100] rev 1789
debian: fix version format There was a small error in the debian packaging
Wed, 01 Feb 2017 15:04:54 +0100 merge with default to prepare the next version stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 15:04:54 +0100] rev 1788
merge with default to prepare the next version
Wed, 01 Feb 2017 15:02:59 +0100 merge with stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 01 Feb 2017 15:02:59 +0100] rev 1787
merge with stable
Tue, 31 Jan 2017 12:32:45 -0800 uncommit: don't lose copy information of remaining files (issue5403) stable
Martin von Zweigbergk <martinvonz@google.com> [Tue, 31 Jan 2017 12:32:45 -0800] rev 1786
uncommit: don't lose copy information of remaining files (issue5403) As reported in the issue, "hg uncommit" would lose copy information of the files that remained in the commit. The problem was simply that the a dict of copies was iterated as "src, dst in copies.items()" where it should have been "dst, src ...".
Wed, 25 Jan 2017 16:50:19 +0100 merge with stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 25 Jan 2017 16:50:19 +0100] rev 1785
merge with stable
Wed, 25 Jan 2017 16:40:45 +0100 fold: cleanly abort on empty fold set (issue5453) stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 25 Jan 2017 16:40:45 +0100] rev 1784
fold: cleanly abort on empty fold set (issue5453) We now handle the empty set case, cleanly aborting instead of crashing with a traceback. The message used match the output of 'hg push' in similar situation.
Mon, 23 Jan 2017 16:09:16 +0100 README: update changelog
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 23 Jan 2017 16:09:16 +0100] rev 1783
README: update changelog
Thu, 12 Jan 2017 13:47:49 -0800 fold: require --from flag for folding revisions to working copy
Martin von Zweigbergk <martinvonz@google.com> [Thu, 12 Jan 2017 13:47:49 -0800] rev 1782
fold: require --from flag for folding revisions to working copy It's very easy to think that "hg fold 4::6" will fold exactly those revisions. In reality, it will fold those *and* any revisions between them and the working copy. To prevent users from making that mistake, require the use of a new --from flag for folding revisions from the given set to the working copy. With this change, I'm sure some users will be surprised that the command can not be run without either --from or --exact, but at least the consequences will be smaller (the command simply aborts and the user can try again).
Tue, 13 Dec 2016 10:28:09 -0800 fold: use 'fold', not 'touch', for transaction description
Martin von Zweigbergk <martinvonz@google.com> [Tue, 13 Dec 2016 10:28:09 -0800] rev 1781
fold: use 'fold', not 'touch', for transaction description
Thu, 05 Jan 2017 01:36:37 -0800 tests: fix tests to reflect hg core changes
Stanislau Hlebik <stash@fb.com> [Thu, 05 Jan 2017 01:36:37 -0800] rev 1780
tests: fix tests to reflect hg core changes In f05ede08dcf7d13794ccc9abb53877a50bf2b58b in core hg there were changes to changeset_printer.
Wed, 23 Nov 2016 21:00:42 +0530 prune: improve error message if unstable changes are disallowed
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 23 Nov 2016 21:00:42 +0530] rev 1779
prune: improve error message if unstable changes are disallowed I saw a question on stackoverflow why evolve reports something like cannot fold chain not ending with head. Even I was confused the first time about the behavior. The error message can be improved to avoid confusion to people who are unaware about the config in future.
Wed, 30 Nov 2016 11:17:55 +0000 wireproto: chunking and compression is forthwith to be handled by hgweb
Martijn Pieters <mjpieters@fb.com> [Wed, 30 Nov 2016 11:17:55 +0000] rev 1778
wireproto: chunking and compression is forthwith to be handled by hgweb Various functions disappeared in the process. Use the new streamres API but fall back to the old way if the keyword arguments are not accepted. See https://www.mercurial-scm.org/repo/hg/rev/2add671bf55b
Sun, 06 Nov 2016 19:19:28 +0100 readme: fix the test run command stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 06 Nov 2016 19:19:28 +0100] rev 1777
readme: fix the test run command As we use the run-tests.py in Mercurial, we do not need to specify the path to a Mercurial utility.
Wed, 02 Nov 2016 18:56:44 +0100 Manifest.in: exclude unshipped extensions
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 02 Nov 2016 18:56:44 +0100] rev 1776
Manifest.in: exclude unshipped extensions Many extensions life in the repository without being shipped we exclude them from the dist tarball.
Wed, 02 Nov 2016 18:54:05 +0100 Manifest.in: include Manifest.in
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 02 Nov 2016 18:54:05 +0100] rev 1775
Manifest.in: include Manifest.in Apparently this file should be in the tarball.
Wed, 02 Nov 2016 18:53:49 +0100 Manifest.in: exclude debian related file
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 02 Nov 2016 18:53:49 +0100] rev 1774
Manifest.in: exclude debian related file The debian rules life in the repository for convenience, however they should not be included in the dist tarball.
Wed, 02 Nov 2016 18:53:28 +0100 Manifest.in: include all script in tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 02 Nov 2016 18:53:28 +0100] rev 1773
Manifest.in: include all script in tests We now have a small fake editor scrip that should be in the dist tarball.
Wed, 02 Nov 2016 18:53:07 +0100 Manifest.in: drop tests/test-qsync.t entry
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 02 Nov 2016 18:53:07 +0100] rev 1772
Manifest.in: drop tests/test-qsync.t entry This file is now longer in the repository.
Wed, 02 Nov 2016 18:52:46 +0100 Manifest.in: drop the 'tests/dummyssh' entry
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 02 Nov 2016 18:52:46 +0100] rev 1771
Manifest.in: drop the 'tests/dummyssh' entry That file is now longer in the repository for some time.
Wed, 02 Nov 2016 18:50:54 +0100 Manifest.in: sort entry
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 02 Nov 2016 18:50:54 +0100] rev 1770
Manifest.in: sort entry
Wed, 02 Nov 2016 18:49:19 +0100 makefile: fix documentation
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 02 Nov 2016 18:49:19 +0100] rev 1769
makefile: fix documentation The only available rules is 'deb-prepare' we fix the documentation.
Tue, 25 Oct 2016 05:15:52 -0700 tests: use curl instead of wget
Simon Farnsworth <simonfar@fb.com> [Tue, 25 Oct 2016 05:15:52 -0700] rev 1768
tests: use curl instead of wget curl is supplied by default on macOS 10.12, but wget isn't. As curl is easy to install on other OSes, just switch the tests over. For Windows systems, you can obtain cURL from https://curl.haxx.se/download.html - for other systems, please use your native package manager. This undoes 4e7da688a066 and 3ffa12edc05a, as they don't make things much simpler on Windows (you have to install extra packages either way round), but they do make things harder on macOS (as curl is supplied by default, whereas wget isn't).
Sun, 30 Oct 2016 23:31:31 +0100 merge with stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 30 Oct 2016 23:31:31 +0100] rev 1767
merge with stable
Sun, 30 Oct 2016 23:28:34 +0100 Added tag 5.5.0 for changeset 727c7211c810 stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 30 Oct 2016 23:28:34 +0100] rev 1766
Added tag 5.5.0 for changeset 727c7211c810
Sun, 30 Oct 2016 23:18:33 +0100 prepare release 5.5.0 stable 5.5.0
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 30 Oct 2016 23:18:33 +0100] rev 1765
prepare release 5.5.0
Sun, 30 Oct 2016 23:16:04 +0100 readme: mention that the next release make use 4.0 compatible stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 30 Oct 2016 23:16:04 +0100] rev 1764
readme: mention that the next release make use 4.0 compatible
Sat, 29 Oct 2016 15:07:27 +0200 merge with latest fix mercurial-3.4
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 29 Oct 2016 15:07:27 +0200] rev 1763
merge with latest fix
Sat, 29 Oct 2016 15:04:23 +0200 merge with latest fix mercurial-3.5
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 29 Oct 2016 15:04:23 +0200] rev 1762
merge with latest fix
Sat, 29 Oct 2016 15:01:41 +0200 merge with latest fix mercurial-3.6
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 29 Oct 2016 15:01:41 +0200] rev 1761
merge with latest fix
Sat, 29 Oct 2016 14:55:57 +0200 merge with latest fix mercurial-3.7
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 29 Oct 2016 14:55:57 +0200] rev 1760
merge with latest fix
Sat, 29 Oct 2016 14:49:37 +0200 merge with latest fix mercurial-3.8
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 29 Oct 2016 14:49:37 +0200] rev 1759
merge with latest fix
Sat, 29 Oct 2016 14:40:47 +0200 merge with latest fix mercurial-3.9
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 29 Oct 2016 14:40:47 +0200] rev 1758
merge with latest fix
Fri, 28 Oct 2016 17:25:06 -0700 errors: add missing imports of mercurial.error stable
Martin von Zweigbergk <martinvonz@google.com> [Fri, 28 Oct 2016 17:25:06 -0700] rev 1757
errors: add missing imports of mercurial.error
Fri, 28 Oct 2016 17:15:57 -0700 evolve: use single quotes in usage messages stable
Martin von Zweigbergk <martinvonz@google.com> [Fri, 28 Oct 2016 17:15:57 -0700] rev 1756
evolve: use single quotes in usage messages Mercurial core has moved in this direction, so let's follow.
Fri, 28 Oct 2016 17:11:43 -0700 evolve: prefer "abort" over "abandon" in messages for consistency stable
Martin von Zweigbergk <martinvonz@google.com> [Fri, 28 Oct 2016 17:11:43 -0700] rev 1755
evolve: prefer "abort" over "abandon" in messages for consistency
Fri, 28 Oct 2016 15:17:27 -0700 setupevolveunfinished: use "hg update -C ." to abort stable
Martin von Zweigbergk <martinvonz@google.com> [Fri, 28 Oct 2016 15:17:27 -0700] rev 1754
setupevolveunfinished: use "hg update -C ." to abort I don't know what this function does, but it seems like it should recommend the same way of aborting as other places do.
Fri, 28 Oct 2016 15:04:40 -0700 evolve: suggest "hg update -C .", including '.', to abort evolve stable
Martin von Zweigbergk <martinvonz@google.com> [Fri, 28 Oct 2016 15:04:40 -0700] rev 1753
evolve: suggest "hg update -C .", including '.', to abort evolve The user will probably not also want to change commit when they abort evolve, like "hg update -C" (without the '.') would do. Note that we already do recommend aborting by using "hg update -C ." in another place.
Fri, 28 Oct 2016 17:03:53 +0200 evolve: update the tested with statement stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 28 Oct 2016 17:03:53 +0200] rev 1752
evolve: update the tested with statement Test pass fine with 4.0-rc. By some magic, we are still compatible down to Mercurial 3.4.
Fri, 28 Oct 2016 17:02:56 +0200 merge with future 5.5 mercurial-3.4
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 28 Oct 2016 17:02:56 +0200] rev 1751
merge with future 5.5 All was fine for 3.4.
Fri, 28 Oct 2016 16:59:32 +0200 merge future 5.5 mercurial-3.5
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 28 Oct 2016 16:59:32 +0200] rev 1750
merge future 5.5 There is a small limitation of split that does not clean up its working directory on failure otherwise all is fine.
Fri, 28 Oct 2016 16:34:57 +0200 merge with future 5.5 mercurial-3.6
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 28 Oct 2016 16:34:57 +0200] rev 1749
merge with future 5.5 No extra change needed to get the test to passe with 3.6
Fri, 28 Oct 2016 16:26:25 +0200 merge with future 5.5 mercurial-3.7
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 28 Oct 2016 16:26:25 +0200] rev 1748
merge with future 5.5 No extra new change are needed from the one needed from the 3.8 branch and previous version.
Fri, 28 Oct 2016 16:16:19 +0200 merge with future 5.5 mercurial-3.8
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 28 Oct 2016 16:16:19 +0200] rev 1747
merge with future 5.5 Test also run on 3.8 with minor cosmetic change. The 'separate' function is not available before 3.9 so we had to drop it.
Fri, 28 Oct 2016 16:03:00 +0200 integrate code update and test change from future 5.5 code mercurial-3.9
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 28 Oct 2016 16:03:00 +0200] rev 1746
integrate code update and test change from future 5.5 code This prove that the code is compatible with 3.9
Fri, 28 Oct 2016 15:44:15 +0200 merge with default, Mercurial 4.0-rc is out stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 28 Oct 2016 15:44:15 +0200] rev 1745
merge with default, Mercurial 4.0-rc is out The content of the Mercurial stable branch changed, we update it here too.
Fri, 28 Oct 2016 15:43:21 +0200 open the mercurial-3.9 compat branch mercurial-3.9
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 28 Oct 2016 15:43:21 +0200] rev 1744
open the mercurial-3.9 compat branch
Sun, 16 Oct 2016 20:29:27 +0200 merge with stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 16 Oct 2016 20:29:27 +0200] rev 1743
merge with stable
Sun, 16 Oct 2016 09:52:53 -0700 evolve: lock the working copy early in next and prev (issue5244) stable
Simon Farnsworth <simonfar@fb.com> [Sun, 16 Oct 2016 09:52:53 -0700] rev 1742
evolve: lock the working copy early in next and prev (issue5244) Both next and prev depend on a consistent working copy, but were waiting to take the lock until they were ready to alter the working copy. Take the lock before reading the working copy state, and do not release it until we're definitely not going to change the working copy.
Sat, 08 Oct 2016 08:14:21 -0700 evolve: indent cmdnext and cmdprev ready for locking change (issue5244) stable
Simon Farnsworth <simonfar@fb.com> [Sat, 08 Oct 2016 08:14:21 -0700] rev 1741
evolve: indent cmdnext and cmdprev ready for locking change (issue5244) The locking change I'm about to introduce forces an indentation shift. Do the indentation change with no code change now, to make the next change easier to review
Sun, 16 Oct 2016 13:50:45 +0200 tests: adapt to some change to topic output stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 16 Oct 2016 13:50:45 +0200] rev 1740
tests: adapt to some change to topic output
Sat, 08 Oct 2016 15:49:12 +0200 split: avoid trying to split an empty commit (issue5191) stable
Philippe Pepiot <philippe.pepiot@logilab.fr> [Sat, 08 Oct 2016 15:49:12 +0200] rev 1739
split: avoid trying to split an empty commit (issue5191)
Sat, 08 Oct 2016 15:49:12 +0200 split: avoid trying to split an empty commit (issue5191)
Philippe Pepiot <philippe.pepiot@logilab.fr> [Sat, 08 Oct 2016 15:49:12 +0200] rev 1738
split: avoid trying to split an empty commit (issue5191)
Thu, 22 Sep 2016 09:15:30 -0700 evolve: fix test breaks related to double->single quote changes
Kostia Balytskyi <ikostia@fb.com> [Thu, 22 Sep 2016 09:15:30 -0700] rev 1737
evolve: fix test breaks related to double->single quote changes
Tue, 13 Sep 2016 01:25:17 +0200 merge with stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 13 Sep 2016 01:25:17 +0200] rev 1736
merge with stable
Mon, 12 Sep 2016 10:41:00 -0700 bump: copy parent manifest before editting it stable
Durham Goode <durham@fb.com> [Mon, 12 Sep 2016 10:41:00 -0700] rev 1735
bump: copy parent manifest before editting it Previously, the bump code would access the previous manifest, then edit that dictionary data structure. Because the manifest was in the mancache at that time, those edits were persisted to other readers who asked for that manifest. This caused commits being made during bump to have the wrong file parents in many situations (hence why the tests need updating).
Tue, 13 Sep 2016 00:56:57 +0200 backed out changeset 7a76f9a43e89
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 13 Sep 2016 00:56:57 +0200] rev 1734
backed out changeset 7a76f9a43e89
Sat, 10 Sep 2016 13:26:19 +0200 readme: add an entry about the {obsolete} template change
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 10 Sep 2016 13:26:19 +0200] rev 1733
readme: add an entry about the {obsolete} template change (It should have been included into the parent changeset.
Fri, 09 Sep 2016 16:42:41 -0700 templates: change {obsolete} to emit only "obsolete" or ""
Martin von Zweigbergk <martinvonz@google.com> [Fri, 09 Sep 2016 16:42:41 -0700] rev 1732
templates: change {obsolete} to emit only "obsolete" or "" The {obsolete} template function can currently emit "stable", "unstable", "extinct", or "suspended". The distinction between "extinct" and "suspended" seems likely to be more confusing that enlightening, and "stable" and "unstable" are not even obsolete. Let's simplify it to just emit "obsolete" for obsolete changesets and "" for others. That will also make it much easier to test for obsolete changsets and do things like "if(obsolete, obsolete, troubles)".
Wed, 07 Sep 2016 17:51:15 +0200 debug data for manifest change in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 07 Sep 2016 17:51:15 +0200] rev 1731
debug data for manifest change in core
Thu, 01 Sep 2016 07:40:27 +0530 evolve: drop point release of versions
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 01 Sep 2016 07:40:27 +0530] rev 1730
evolve: drop point release of versions Modern Mercurial only looks at X.Y versions, so point releases can be dropped.
Thu, 01 Sep 2016 04:38:56 +0530 evolve: removed redundant try/finally blocks
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 01 Sep 2016 04:38:56 +0530] rev 1729
evolve: removed redundant try/finally blocks There were two todo's to remove the redundant try finally blocks. Done that and also fixed the indentation afterwards.
Sat, 27 Aug 2016 20:37:15 +0800 docs: spelling fixes
Anton Shestakov <av6@dwimlabs.net> [Sat, 27 Aug 2016 20:37:15 +0800] rev 1728
docs: spelling fixes Squashed into 1 commit because I'm lazy: - non-existant -> nonexistent - accros -> across - comptatibility -> compatibility - requieres -> requires - aliast -> alias - unexistent -> nonexistent - convertion -> conversion - nto -> not
Sat, 27 Aug 2016 20:25:17 +0800 simple4server: update buglink to point to bz.mercurial-scm.org
Anton Shestakov <av6@dwimlabs.net> [Sat, 27 Aug 2016 20:25:17 +0800] rev 1727
simple4server: update buglink to point to bz.mercurial-scm.org
Sat, 27 Aug 2016 20:24:58 +0800 evolve: update buglink to point to bz.mercurial-scm.org
Anton Shestakov <av6@dwimlabs.net> [Sat, 27 Aug 2016 20:24:58 +0800] rev 1726
evolve: update buglink to point to bz.mercurial-scm.org
Sat, 27 Aug 2016 20:24:13 +0800 docs: use https for mercurial-scm.org
Anton Shestakov <av6@dwimlabs.net> [Sat, 27 Aug 2016 20:24:13 +0800] rev 1725
docs: use https for mercurial-scm.org
Sat, 27 Aug 2016 20:17:41 +0800 docs: point wiki and bz links to mercurial-scm.org
Anton Shestakov <av6@dwimlabs.net> [Sat, 27 Aug 2016 20:17:41 +0800] rev 1724
docs: point wiki and bz links to mercurial-scm.org
Mon, 29 Aug 2016 14:54:20 +0200 test: adapt to topic changes
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 29 Aug 2016 14:54:20 +0200] rev 1723
test: adapt to topic changes We display more information about the stacks, so we have to take than in account in the tests.
Thu, 11 Aug 2016 23:00:46 +0200 continue: ensure we hold the wlock before writing file to disk
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 11 Aug 2016 23:00:46 +0200] rev 1722
continue: ensure we hold the wlock before writing file to disk A hack in 'hg evolve --continue' involve writing a 'graftstate' file. We take the wlock before doing so.
Tue, 09 Aug 2016 00:37:58 +0200 test: also use 'devel.legacy.exchange=bundle1' in test
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 09 Aug 2016 00:37:58 +0200] rev 1721
test: also use 'devel.legacy.exchange=bundle1' in test Changeset 39537bc64442 in mercurial removed the 'experimental.bundle2' option. We use the new option in parallel.
Mon, 08 Aug 2016 10:05:47 -0700 dirstate: use arg count for version check
Ryan McElroy <rmcelroy@fb.com> [Mon, 08 Aug 2016 10:05:47 -0700] rev 1720
dirstate: use arg count for version check In 52ff07e1de91 in the main hg repo, dirstate was changed to require a second argument, making the default args check no longer work. Instead, we switch to check the number of arguments, which should be backwards and forwards compatible.
Mon, 01 Aug 2016 22:55:11 +0200 merge back with stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 01 Aug 2016 22:55:11 +0200] rev 1719
merge back with stable
Mon, 01 Aug 2016 22:42:38 +0200 Added tag 5.4.1 for changeset 2ad40d972a74 stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 01 Aug 2016 22:42:38 +0200] rev 1718
Added tag 5.4.1 for changeset 2ad40d972a74
Mon, 01 Aug 2016 22:40:04 +0200 prepare release 5.4.1 stable 5.4.1
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 01 Aug 2016 22:40:04 +0200] rev 1717
prepare release 5.4.1
Mon, 01 Aug 2016 22:37:48 +0200 3.9 have been released stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 01 Aug 2016 22:37:48 +0200] rev 1716
3.9 have been released
Mon, 01 Aug 2016 22:37:03 +0200 open mercurial-3.7 compat branch mercurial-3.8
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 01 Aug 2016 22:37:03 +0200] rev 1715
open mercurial-3.7 compat branch
Wed, 22 Jun 2016 18:22:17 +0100 directaccess: make sure gethashsymbols does not return rev numbers
Jun Wu <quark@fb.com> [Wed, 22 Jun 2016 18:22:17 +0100] rev 1714
directaccess: make sure gethashsymbols does not return rev numbers With "hg log -r 1 -r 2 -r 3", gethashsymbols will get the following tree: ('func', ('symbol', '_list'), ('string', '1\x002\x003')) Before this patch, it will return ['1', '2', '3'], which are revision numbers and causes unnecessary (expensive) partialmatch lookups. This patch refacts gethashsymbols a bit, making sure the returning values are always filtered.
Wed, 15 Jun 2016 15:19:38 -0700 evolve: use hashlib to compute sha1 hashes
Jeroen Vaelen <jeroen@fb.com> [Wed, 15 Jun 2016 15:19:38 -0700] rev 1713
evolve: use hashlib to compute sha1 hashes The util alias for sha1 was dropped in c27dc3c3122 in favor of hashlib.
Fri, 27 May 2016 17:36:07 +0200 merge with stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 27 May 2016 17:36:07 +0200] rev 1712
merge with stable
Fri, 27 May 2016 17:33:53 +0200 inhibit: protect agains dropped 'bmstore.write' stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 27 May 2016 17:33:53 +0200] rev 1711
inhibit: protect agains dropped 'bmstore.write' As planned per the deprecation policy, 'bmstore.write' have been dropped in Mercurial core (052c9318e464).
Wed, 25 May 2016 19:41:08 +0000 help: fix evolution help grammar stable
timeless@gmail.com [Wed, 25 May 2016 19:41:08 +0000] rev 1710
help: fix evolution help grammar
Wed, 25 May 2016 19:13:26 +0000 help: fix evolution hg phases reference stable
timeless@gmail.com [Wed, 25 May 2016 19:13:26 +0000] rev 1709
help: fix evolution hg phases reference
Fri, 06 May 2016 00:24:17 +0200 merge latest tag in 3.4 branch mercurial-3.4
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 06 May 2016 00:24:17 +0200] rev 1708
merge latest tag in 3.4 branch
Fri, 06 May 2016 00:24:00 +0200 merge latest tag in 3.5 branch mercurial-3.5
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 06 May 2016 00:24:00 +0200] rev 1707
merge latest tag in 3.5 branch
Fri, 06 May 2016 00:23:43 +0200 merge latest tag in 3.6-branch mercurial-3.6
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 06 May 2016 00:23:43 +0200] rev 1706
merge latest tag in 3.6-branch
Fri, 06 May 2016 00:23:25 +0200 merge latest tag in 3.7-branch mercurial-3.7
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 06 May 2016 00:23:25 +0200] rev 1705
merge latest tag in 3.7-branch
Fri, 06 May 2016 00:22:54 +0200 merge back with stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 06 May 2016 00:22:54 +0200] rev 1704
merge back with stable
Fri, 06 May 2016 00:22:24 +0200 Added tag 5.4.0 for changeset b21ce82e6f76 stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 06 May 2016 00:22:24 +0200] rev 1703
Added tag 5.4.0 for changeset b21ce82e6f76
Fri, 06 May 2016 00:18:24 +0200 evolve: prepare release of version 5.4.0 stable 5.4.0
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 06 May 2016 00:18:24 +0200] rev 1702
evolve: prepare release of version 5.4.0
Fri, 06 May 2016 00:16:18 +0200 evolve: update testedwith field stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 06 May 2016 00:16:18 +0200] rev 1701
evolve: update testedwith field 3.8.1 is working fine and no older branch had to be dropped.
Fri, 06 May 2016 00:08:31 +0200 merge with stable through 3.5 branch mercurial-3.4
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 06 May 2016 00:08:31 +0200] rev 1700
merge with stable through 3.5 branch
Fri, 06 May 2016 00:03:28 +0200 test: wider glob for payload size mercurial-3.4
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 06 May 2016 00:03:28 +0200] rev 1699
test: wider glob for payload size For some reason this various a bit more than previously though.
Fri, 06 May 2016 00:00:14 +0200 merge with stable throug 3.6 branch mercurial-3.5
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 06 May 2016 00:00:14 +0200] rev 1698
merge with stable throug 3.6 branch
Thu, 05 May 2016 23:51:35 +0200 merge with stable through 3.7 branch mercurial-3.6
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 05 May 2016 23:51:35 +0200] rev 1697
merge with stable through 3.7 branch dropped the topic test and updated output with some minor difference Hg: Enter commit message. Lines beginning with 'HG:' are removed.
Thu, 05 May 2016 22:22:30 +0200 mercurial-3.7: revert output change mercurial-3.7
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 05 May 2016 22:22:30 +0200] rev 1696
mercurial-3.7: revert output change No feature regression but various output change
Thu, 05 May 2016 22:13:02 +0200 merge default into stable stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 05 May 2016 22:13:02 +0200] rev 1695
merge default into stable Mercurial 3.8 have been release, let's get ready for a 5.4.0 release.
Thu, 05 May 2016 21:54:26 +0200 test: rename TOPICROOT to HGTEST_TOPICROOT
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 05 May 2016 21:54:26 +0200] rev 1694
test: rename TOPICROOT to HGTEST_TOPICROOT Mercurial is about to introduce whitelisting of environment variable, we comply to the planned prefix in advance in a hope to stay compatible in the future.
Thu, 05 May 2016 21:42:49 +0200 test: update topic test output for order change
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 05 May 2016 21:42:49 +0200] rev 1693
test: update topic test output for order change As in topic d8f1e432b16a the tipmost changeset is now displayed first. We adapt the test output to reflect it.
Thu, 05 May 2016 21:38:04 +0200 test: update topic test output for indexing change
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 05 May 2016 21:38:04 +0200] rev 1692
test: update topic test output for indexing change Changeset 61f36480740f in topic updated the indexing scheme, we update the test to take this into account.
Thu, 05 May 2016 21:35:53 +0200 test: adapt topic test
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 05 May 2016 21:35:53 +0200] rev 1691
test: adapt topic test The 'created new head' bug was fixed in bdc5bb223b50, we adapt the test with the fixed output.
Thu, 05 May 2016 20:14:39 +0200 test: improve skipped message for topic
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 05 May 2016 20:14:39 +0200] rev 1690
test: improve skipped message for topic The skipped message should point people to a way to solve the situation.
Mon, 02 May 2016 18:40:21 +0200 prune: suggest --biject in error "hint"
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 02 May 2016 18:40:21 +0200] rev 1689
prune: suggest --biject in error "hint" When use specify multiple changesets to prune and as successors, we should point them to the right options to confirm there intend.
Mon, 02 May 2016 18:24:36 +0200 metaedit: check for public changeset before instability
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 02 May 2016 18:24:36 +0200] rev 1688
metaedit: check for public changeset before instability Public changeset will stay public even if the selection is adjusted, this is a more definitive condition that is worth warning about first.
Mon, 02 May 2016 18:21:54 +0200 fold: move sanity check after locking
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 02 May 2016 18:21:54 +0200] rev 1687
fold: move sanity check after locking Checking for operation validaty without the locks open us to race condition.
Mon, 25 Apr 2016 16:24:42 -0700 metaedit: add support for folding commits while editing their metadata
Siddharth Agarwal <sid0@fb.com> [Mon, 25 Apr 2016 16:24:42 -0700] rev 1686
metaedit: add support for folding commits while editing their metadata This also allows us to accept multiple commits without dealing with the thorny algorithmic and UI issues of editing multiple commits at once. Crucially, it is different from 'hg fold --exact' in that it also allows 'folding' a single commit and rewriting its metadata. This is really useful to have as a single logical operation, for example while preparing a series of multiple local changesets that will need to be pushed as a single changeset.
Mon, 25 Apr 2016 16:24:42 -0700 commands: introduce a new command to edit commit metadata
Siddharth Agarwal <sid0@fb.com> [Mon, 25 Apr 2016 16:24:42 -0700] rev 1685
commands: introduce a new command to edit commit metadata This patch introduces metaedit, a command to metadata of a set of revisions without updating the working copy. This is particularly relevant for repositories where changing the parent of the working copy is time-consuming. We could add more stack manipulation operations to metaedit in the future.
Mon, 25 Apr 2016 16:24:42 -0700 evolve: factor out check for creating unstable commits
Siddharth Agarwal <sid0@fb.com> [Mon, 25 Apr 2016 16:24:42 -0700] rev 1684
evolve: factor out check for creating unstable commits This check is pretty non-trivial, and we do it in two places already. We're going to do it in a third place soon.
Mon, 25 Apr 2016 16:24:42 -0700 evolve: factor out sanity checks for folds
Siddharth Agarwal <sid0@fb.com> [Mon, 25 Apr 2016 16:24:42 -0700] rev 1683
evolve: factor out sanity checks for folds We're going to use the same checks in another context in an upcoming patch.
Thu, 21 Apr 2016 06:12:20 +0000 evolve: include node, rev, desc, and phase in list
timeless@gmail.com [Thu, 21 Apr 2016 06:12:20 +0000] rev 1682
evolve: include node, rev, desc, and phase in list
Thu, 21 Apr 2016 06:11:57 +0000 evolve: use hex in list output
timeless@gmail.com [Thu, 21 Apr 2016 06:11:57 +0000] rev 1681
evolve: use hex in list output
Wed, 20 Apr 2016 19:00:13 +0000 py3: use items() instead of iteritems()
timeless@gmail.com [Wed, 20 Apr 2016 19:00:13 +0000] rev 1680
py3: use items() instead of iteritems()
Wed, 20 Apr 2016 18:59:46 +0000 py3: change except from two comma to as notation
timeless@gmail.com [Wed, 20 Apr 2016 18:59:46 +0000] rev 1679
py3: change except from two comma to as notation
Wed, 20 Apr 2016 18:58:52 +0000 py3: tolerate io/StringIO divergence
timeless@gmail.com [Wed, 20 Apr 2016 18:58:52 +0000] rev 1678
py3: tolerate io/StringIO divergence
Sun, 24 Apr 2016 22:31:58 -0400 split: rewrite the pre-split commit message
Jordi Gutiérrez Hermoso <jordigh@octave.org> [Sun, 24 Apr 2016 22:31:58 -0400] rev 1677
split: rewrite the pre-split commit message I find this wording slightly clearer.
Wed, 20 Apr 2016 17:11:49 -0700 open mercurial-3.7 compat branch mercurial-3.7
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 20 Apr 2016 17:11:49 -0700] rev 1676
open mercurial-3.7 compat branch
Wed, 20 Apr 2016 17:08:59 -0700 readme: add various missing parts
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 20 Apr 2016 17:08:59 -0700] rev 1675
readme: add various missing parts
Wed, 20 Apr 2016 16:40:11 -0700 hgignore: add an ignore rule for test timing stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 20 Apr 2016 16:40:11 -0700] rev 1674
hgignore: add an ignore rule for test timing Modern tests runner store a record of last test run timing. We properly ignore it.
Tue, 19 Apr 2016 14:29:40 -0700 tests: change quoting pattern to match core's conventions
Laurent Charignon <lcharignon@fb.com> [Tue, 19 Apr 2016 14:29:40 -0700] rev 1673
tests: change quoting pattern to match core's conventions This patch modifies two tests to match new quoting patterns used in core: (use "hg config --edit" to set your username) becomes (use 'hg config --edit' to set your username) and (use hg resolve and hg graft --continue) becomes (use 'hg resolve' and 'hg graft --continue')
Fri, 14 Sep 2012 11:32:28 -0400 Spelling: committed
timeless@gmail.com [Fri, 14 Sep 2012 11:32:28 -0400] rev 1672
Spelling: committed
Fri, 14 Sep 2012 11:30:32 -0400 Spelling (en-us): behavior
timeless@gmail.com [Fri, 14 Sep 2012 11:30:32 -0400] rev 1671
Spelling (en-us): behavior
Fri, 14 Sep 2012 11:28:31 -0400 Spelling: forbidden
timeless@gmail.com [Fri, 14 Sep 2012 11:28:31 -0400] rev 1670
Spelling: forbidden
Wed, 12 Sep 2012 17:57:30 -0400 Brand: Mercurial
timeless@gmail.com [Wed, 12 Sep 2012 17:57:30 -0400] rev 1669
Brand: Mercurial
Wed, 12 Sep 2012 18:27:16 -0400 Grammar: paragraphs should end with periods
timeless@gmail.com [Wed, 12 Sep 2012 18:27:16 -0400] rev 1668
Grammar: paragraphs should end with periods
Wed, 12 Sep 2012 18:25:48 -0400 Grammar: the
timeless@gmail.com [Wed, 12 Sep 2012 18:25:48 -0400] rev 1667
Grammar: the
Wed, 12 Sep 2012 17:57:15 -0400 Grammar: resulting issues
timeless@gmail.com [Wed, 12 Sep 2012 17:57:15 -0400] rev 1666
Grammar: resulting issues
Wed, 12 Sep 2012 18:06:44 -0400 Grammar: introduced
timeless@gmail.com [Wed, 12 Sep 2012 18:06:44 -0400] rev 1665
Grammar: introduced
Wed, 12 Sep 2012 18:31:15 -0400 Grammar: has
timeless@gmail.com [Wed, 12 Sep 2012 18:31:15 -0400] rev 1664
Grammar: has
Fri, 14 Sep 2012 10:37:09 -0400 Spelling: versioning
timeless@gmail.com [Fri, 14 Sep 2012 10:37:09 -0400] rev 1663
Spelling: versioning
Wed, 12 Sep 2012 18:15:16 -0400 Spelling: unnecessary
timeless@gmail.com [Wed, 12 Sep 2012 18:15:16 -0400] rev 1662
Spelling: unnecessary
Wed, 12 Sep 2012 18:14:40 -0400 Spelling: through
timeless@gmail.com [Wed, 12 Sep 2012 18:14:40 -0400] rev 1661
Spelling: through
Fri, 14 Sep 2012 10:35:21 -0400 Spelling: those
timeless@gmail.com [Fri, 14 Sep 2012 10:35:21 -0400] rev 1660
Spelling: those
Wed, 12 Sep 2012 18:11:23 -0400 Spelling: succeeded
timeless@gmail.com [Wed, 12 Sep 2012 18:11:23 -0400] rev 1659
Spelling: succeeded
Fri, 14 Sep 2012 10:32:39 -0400 Spelling: remotely
timeless@gmail.com [Fri, 14 Sep 2012 10:32:39 -0400] rev 1658
Spelling: remotely
Wed, 12 Sep 2012 18:02:05 -0400 Spelling: remains
timeless@gmail.com [Wed, 12 Sep 2012 18:02:05 -0400] rev 1657
Spelling: remains
Fri, 14 Sep 2012 10:07:31 -0400 Spelling: precursors
timeless@gmail.com [Fri, 14 Sep 2012 10:07:31 -0400] rev 1656
Spelling: precursors
Fri, 14 Sep 2012 10:07:15 -0400 Spelling: practice
timeless@gmail.com [Fri, 14 Sep 2012 10:07:15 -0400] rev 1655
Spelling: practice
Thu, 13 Sep 2012 17:34:14 -0400 Spelling: directory
timeless@gmail.com [Thu, 13 Sep 2012 17:34:14 -0400] rev 1654
Spelling: directory
Thu, 13 Sep 2012 17:31:46 -0400 Spelling: happened
timeless@gmail.com [Thu, 13 Sep 2012 17:31:46 -0400] rev 1653
Spelling: happened
Wed, 12 Sep 2012 18:06:36 -0400 Spelling: formerly
timeless@gmail.com [Wed, 12 Sep 2012 18:06:36 -0400] rev 1652
Spelling: formerly
Wed, 12 Sep 2012 18:05:44 -0400 Spelling: extinct
timeless@gmail.com [Wed, 12 Sep 2012 18:05:44 -0400] rev 1651
Spelling: extinct
Thu, 13 Sep 2012 17:34:29 -0400 Spelling: directly
timeless@gmail.com [Thu, 13 Sep 2012 17:34:29 -0400] rev 1650
Spelling: directly
Wed, 12 Sep 2012 18:03:19 -0400 Spelling: deserialize
timeless@gmail.com [Wed, 12 Sep 2012 18:03:19 -0400] rev 1649
Spelling: deserialize
Thu, 13 Sep 2012 17:29:45 -0400 Spelling: accessing
timeless@gmail.com [Thu, 13 Sep 2012 17:29:45 -0400] rev 1648
Spelling: accessing
Wed, 12 Sep 2012 18:09:10 -0400 Spelling (en-us): -ize
timeless@gmail.com [Wed, 12 Sep 2012 18:09:10 -0400] rev 1647
Spelling (en-us): -ize
Thu, 14 Apr 2016 21:30:57 +0000 list: report the phase for divergent commits
timeless@gmail.com [Thu, 14 Apr 2016 21:30:57 +0000] rev 1646
list: report the phase for divergent commits
Thu, 14 Apr 2016 17:42:18 +0000 readme: improve bug tracker link
timeless@gmail.com [Thu, 14 Apr 2016 17:42:18 +0000] rev 1645
readme: improve bug tracker link
Thu, 14 Apr 2016 17:40:56 +0000 readme: fix domain for bug tracker (bz.mercurial-scm.org)
timeless@gmail.com [Thu, 14 Apr 2016 17:40:56 +0000] rev 1644
readme: fix domain for bug tracker (bz.mercurial-scm.org)
Thu, 14 Apr 2016 18:33:00 +0000 ignore: remove stale items
timeless@gmail.com [Thu, 14 Apr 2016 18:33:00 +0000] rev 1643
ignore: remove stale items docs are built into ^/html
Thu, 14 Apr 2016 18:07:40 +0000 project: change evolution domain to mercurial-scm
timeless@gmail.com [Thu, 14 Apr 2016 18:07:40 +0000] rev 1642
project: change evolution domain to mercurial-scm
Thu, 14 Apr 2016 13:02:23 -0700 tests: adapt output to the new graphlog style
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 14 Apr 2016 13:02:23 -0700] rev 1641
tests: adapt output to the new graphlog style Core have change the way graphmod handle missing parent. We adapt our output.
Thu, 14 Apr 2016 03:42:48 +0000 evolve: add --continue note to summary
timeless@gmail.com [Thu, 14 Apr 2016 03:42:48 +0000] rev 1640
evolve: add --continue note to summary
Thu, 14 Apr 2016 15:03:18 +0000 evolve: report merge node
timeless@gmail.com [Thu, 14 Apr 2016 15:03:18 +0000] rev 1639
evolve: report merge node When running evolve --any, evolve will report that it can not handle a merge node. In order for this to be helpful, we report the revision so that a user could fix t.
Thu, 14 Apr 2016 15:02:10 +0000 evolve: treat no support as non fatal
timeless@gmail.com [Thu, 14 Apr 2016 15:02:10 +0000] rev 1638
evolve: treat no support as non fatal When running evolve --all, unhandled edges should not block other revisions from being solved.
Wed, 13 Apr 2016 23:36:44 +0000 list: limit to descriptions to firstline
timeless@gmail.com [Wed, 13 Apr 2016 23:36:44 +0000] rev 1637
list: limit to descriptions to firstline
Fri, 08 Apr 2016 18:45:58 +0000 config: report evolve as origin for config
timeless@gmail.com [Fri, 08 Apr 2016 18:45:58 +0000] rev 1636
config: report evolve as origin for config
Fri, 08 Apr 2016 18:45:45 +0000 alias: report evolve as origin for aliases
timeless@gmail.com [Fri, 08 Apr 2016 18:45:45 +0000] rev 1635
alias: report evolve as origin for aliases
Tue, 22 Mar 2016 14:08:16 -0700 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com> [Tue, 22 Mar 2016 14:08:16 -0700] rev 1634
evolve--list: initial implementation This implementation does not work with '-T json' since it needs multiple levels of depth. There is various small issue with the current data, the test coverage is a bit low and the output is likely to change, but this is a good step forward. Sample output: 01a3e66ba030: e (amended) unstable: 1995fc658ad6 (unstable parent) divergent: 84e1c6ae319d d3b90e9c84ab (precursor 3efa43a7427b) divergent: add9a356b8cf (precursor 3efa43a7427b) add9a356b8cf: e (rebased) divergent: 84e1c6ae319d d3b90e9c84ab (precursor 3efa43a7427b) divergent: 01a3e66ba030 (precursor 3efa43a7427b) 84e1c6ae319d: e (e+f split) unstable: 1995fc658ad6 (unstable parent) divergent: 01a3e66ba030 (precursor 3efa43a7427b) divergent: add9a356b8cf (precursor 3efa43a7427b) d3b90e9c84ab: f (e+f split) unstable: 84e1c6ae319d (unstable parent) divergent: 01a3e66ba030 (precursor 3efa43a7427b) divergent: add9a356b8cf (precursor 3efa43a7427b) 8febfaee0dd1: c unstable: 43765473b851 (obsolete parent) bumped: b36d99df9f41 (immutable precursor) 1995fc658ad6: d: commit with a long happy message, ababagalamaga, ababagal... unstable: 8febfaee0dd1 (unstable parent) fa8498ad030f: aa unstable: d3b90e9c84ab (unstable parent)
Fri, 18 Mar 2016 23:49:32 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 18 Mar 2016 23:49:32 -0700] rev 1633
merge with stable
Thu, 17 Mar 2016 17:03:51 -0700 evolve: Fix crash when reading docstring stable
Juntao Li <juntaoli@fb.com> [Thu, 17 Mar 2016 17:03:51 -0700] rev 1632
evolve: Fix crash when reading docstring Before this patch, hg evolve --divergent could crash when looking for docstring of function of merge.update. We were checking the docstring to work properly with older version of Mercurial. It could crash if an extension would wrap merge.update without keeping the docstring. This patch fixes the crash.
Fri, 18 Mar 2016 16:37:49 -0700 prune: remove the kill alias
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 18 Mar 2016 16:37:49 -0700] rev 1631
prune: remove the kill alias This have been a long time since the command was rename (over 'kill -1' threat), it is time to get rid of it.
Thu, 17 Mar 2016 15:04:05 -0700 evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com> [Thu, 17 Mar 2016 15:04:05 -0700] rev 1630
evolve: Fix crush when reading docstring Before this patch, hg evolve --divergent could crush when looking for docstring of function of merge.update. We were checking the docstring to work properly with older version of Mercurial. It could crush if an extension would wrap merge.update without keeping the docstring. This patch fixes the crush.
Thu, 17 Mar 2016 11:31:55 -0700 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 17 Mar 2016 11:31:55 -0700] rev 1629
topic: restrict 'hg prev' to current topic unless --no-topic is passed This is far from perfect but a good start
Thu, 17 Mar 2016 11:25:01 -0700 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 17 Mar 2016 11:25:01 -0700] rev 1628
topic: restrict 'hg prev' to current topic unless --no-topic is passed This is far from perfect but a good start.
Thu, 17 Mar 2016 10:04:30 -0700 topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 17 Mar 2016 10:04:30 -0700] rev 1627
topic: preserve topic during evolve previously, topic handling was absent leading to whatever the active topic was when `hg evolve` was run to be used for all evolve results
Thu, 17 Mar 2016 09:39:35 -0700 topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 17 Mar 2016 09:39:35 -0700] rev 1626
topic: 'hg evolve --all' pick all trouble within current topic This is the first changeset of a collaboration between the topic extensions and evolve. If there is an active topic, 'hg evolve --all' will try to fix all changesets in that topic wherever they are. Aspiring descendant that are not in the current topic will be ignored. For now, evolve behave as usual if there is no active topic. This is a bit inconsistent and will probably be unified in the future.
Sat, 07 Nov 2015 16:08:42 -0500 close branch 3.3 mercurial-3.3
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 07 Nov 2015 16:08:42 -0500] rev 1625
close branch 3.3 I'm not expecting any more work in there.
Sat, 12 Mar 2016 13:59:07 +0800 evolve: mark progress units for translation
Anton Shestakov <av6@dwimlabs.net> [Sat, 12 Mar 2016 13:59:07 +0800] rev 1624
evolve: mark progress units for translation
Sat, 12 Mar 2016 13:45:25 +0800 evolve: ui.progress doesn't use total count if pos is None, let's drop it
Anton Shestakov <av6@dwimlabs.net> [Sat, 12 Mar 2016 13:45:25 +0800] rev 1623
evolve: ui.progress doesn't use total count if pos is None, let's drop it Every other call of ui.progress that has argument #2 (named `pos`) set to None doesn't specify `total`, because it won't be used. Basically, ui.progress(action, None) is enough, when used like this it hides progress bar because the action is considered completed. So this is just a minor cleanup patch.
Sat, 12 Mar 2016 13:15:28 +0800 debugrecordpruneparents: fix an apparent typo (marks) stable
Anton Shestakov <av6@dwimlabs.net> [Sat, 12 Mar 2016 13:15:28 +0800] rev 1622
debugrecordpruneparents: fix an apparent typo (marks)
Fri, 11 Mar 2016 23:47:59 +0000 test: explicitly disable rebaseskipobsolete in a couple of place (issue5135)
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 11 Mar 2016 23:47:59 +0000] rev 1621
test: explicitly disable rebaseskipobsolete in a couple of place (issue5135) We want to keep the old behavior for the sake of testing.
Fri, 11 Mar 2016 13:11:54 +0100 evolve: remove unused import
liscju <piotr.listkiewicz@gmail.com> [Fri, 11 Mar 2016 13:11:54 +0100] rev 1620
evolve: remove unused import
Fri, 11 Mar 2016 09:48:12 +0000 hgext: turn 'hgext' into a namespace package
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 11 Mar 2016 09:48:12 +0000] rev 1619
hgext: turn 'hgext' into a namespace package Actually since Python 2.3, there is some way to turn top level package into "namespace package" so that multiple subpackage installed in different part of the path can still be imported transparently. This feature was previously thought (at least by myself) to be only provided by some setuptool black magic. Turning hgext into such namespace package allows third extensions to install themselves inside the "hgext" namespace package to avoid polluting the global python module namespace. They will now be able to do so without making it a pain to use a Mercurial "installed" in a different way/location than these extensions.
Thu, 25 Feb 2016 13:18:36 +0100 merge stable into default
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 25 Feb 2016 13:18:36 +0100] rev 1618
merge stable into default
Thu, 25 Feb 2016 13:14:04 +0100 url: update url to point to the latest hosting stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 25 Feb 2016 13:14:04 +0100] rev 1617
url: update url to point to the latest hosting The documentation and various packaging were out of date.
Sun, 14 Feb 2016 14:37:40 +0000 tests: add head warning messages
Pierre-Yves David <pierre-yves.david@fb.com> [Sun, 14 Feb 2016 14:37:40 +0000] rev 1616
tests: add head warning messages Core gained a warning about other head on the same branch. This impact our tests.
Wed, 10 Feb 2016 18:54:49 -0600 split: fix wording of documentation for --rev option stable
Nathan Goldbaum <ngoldbau@ucsc.edu> [Wed, 10 Feb 2016 18:54:49 -0600] rev 1615
split: fix wording of documentation for --rev option
Thu, 11 Feb 2016 00:44:28 +0000 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 11 Feb 2016 00:44:28 +0000] rev 1614
merge with stable
Thu, 11 Feb 2016 00:42:22 +0000 Added tag 5.3.0 for changeset bd59cc2ee203 stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 11 Feb 2016 00:42:22 +0000] rev 1613
Added tag 5.3.0 for changeset bd59cc2ee203
Thu, 11 Feb 2016 00:39:56 +0000 merge with strange other head on stable stable 5.3.0
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 11 Feb 2016 00:39:56 +0000] rev 1612
merge with strange other head on stable
Thu, 11 Feb 2016 00:37:05 +0000 prepare version 5.3.0 stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 11 Feb 2016 00:37:05 +0000] rev 1611
prepare version 5.3.0
Thu, 11 Feb 2016 00:35:58 +0000 evolve: update testedwith statement stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 11 Feb 2016 00:35:58 +0000] rev 1610
evolve: update testedwith statement We have carefully testing with Mercurial form 3.4 to 3.7
Thu, 11 Feb 2016 00:35:16 +0000 Readme: mention fix for issue4950 stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 11 Feb 2016 00:35:16 +0000] rev 1609
Readme: mention fix for issue4950
Thu, 11 Feb 2016 00:32:40 +0000 merge with new stable through 3.5 and 3.6 mercurial-3.4
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 11 Feb 2016 00:32:40 +0000] rev 1608
merge with new stable through 3.5 and 3.6
Thu, 04 Feb 2016 11:01:35 +0000 tests: register expected difference for Mercurial 3.4 mercurial-3.4
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 04 Feb 2016 11:01:35 +0000] rev 1607
tests: register expected difference for Mercurial 3.4
Thu, 11 Feb 2016 00:07:54 +0000 merge with stable through 3.6 mercurial-3.5
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 11 Feb 2016 00:07:54 +0000] rev 1606
merge with stable through 3.6
Thu, 11 Feb 2016 00:02:39 +0000 readme: mark feature only available in 3.7 as such stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 11 Feb 2016 00:02:39 +0000] rev 1605
readme: mark feature only available in 3.7 as such
Wed, 10 Feb 2016 23:44:00 +0000 Merge with stable, updating tests output mercurial-3.6
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 10 Feb 2016 23:44:00 +0000] rev 1604
Merge with stable, updating tests output Notable change: - We do not support evolving merge before 3.7 - We don't support inhibit/direct-access
Thu, 04 Feb 2016 11:18:50 +0000 readme: point to mercurial-scm.org instead of selenic.com stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 04 Feb 2016 11:18:50 +0000] rev 1603
readme: point to mercurial-scm.org instead of selenic.com
Thu, 04 Feb 2016 11:17:09 +0000 merge with stable (Mercurial 3.7 is out) stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 04 Feb 2016 11:17:09 +0000] rev 1602
merge with stable (Mercurial 3.7 is out)
Thu, 04 Feb 2016 11:13:38 +0000 tests: register expected difference for Mercurial 3.6 mercurial-3.6
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 04 Feb 2016 11:13:38 +0000] rev 1601
tests: register expected difference for Mercurial 3.6
Thu, 04 Feb 2016 11:07:44 +0000 tests: register expected difference for Mercurial 3.5 mercurial-3.5
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 04 Feb 2016 11:07:44 +0000] rev 1600
tests: register expected difference for Mercurial 3.5
Thu, 04 Feb 2016 10:24:26 +0000 test: adapt to 3.6 help changes stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 04 Feb 2016 10:24:26 +0000] rev 1599
test: adapt to 3.6 help changes
Thu, 04 Feb 2016 02:46:40 -0800 evolve: make split respect rev args passed without --rev or -r
Kostia Balytskyi <ikostia@fb.com> [Thu, 04 Feb 2016 02:46:40 -0800] rev 1598
evolve: make split respect rev args passed without --rev or -r Currently, if one runs `hg split .` or `hg split`, it will fail with an exception. This happens becuase we only expect revision args to be passed as --rev/-r ones and don't treat unnamed args properly or add default values if no args are provided.
Thu, 04 Feb 2016 01:19:14 +0000 evolve: write our own custom evolvestate file
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 04 Feb 2016 01:19:14 +0000] rev 1597
evolve: write our own custom evolvestate file Since for ever, we were using 'graftstate' to record the node currently being evolve and allow 'hg evolve --continue' we now move to our on 'evolvestate' file. This remove and issue with 'hg summary' listing interrupted evolve as graft. This also open the way for storing more data into that file and allow proper --abort and --continue of the whole evolve operation (and not just the last one). The whole thing is very hacky but at least there is some progress. Thanks goes to Shusen Liu for initiating this work.
Thu, 04 Feb 2016 10:16:52 +0000 readme: update readme for issue 4966
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 04 Feb 2016 10:16:52 +0000] rev 1596
readme: update readme for issue 4966
Wed, 03 Feb 2016 23:21:50 +0000 test: back hash change from 'extra' content change out
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 03 Feb 2016 23:21:50 +0000] rev 1595
test: back hash change from 'extra' content change out The changesets 13701c3fed9c, 3e907ff1981f and 54394d2aaf5e were introduced to handle a change to the way extra were carried out by various command in core. This had to be backout for 3.7.1 as is broken multiple third party extension. We backout the test update as a result. Core changesets performing the backout: ce9696193175::b698abf971e7
Fri, 22 Jan 2016 21:41:59 +0900 evolve: close transaction if conflict is detected in relocate (issue4966)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 22 Jan 2016 21:41:59 +0900] rev 1594
evolve: close transaction if conflict is detected in relocate (issue4966) Before this patch, transaction is aborted, if conflict is detected at merging while "hg evolve". Since 8f2ff40fe9c9 (or 3.6) of Mercurial, aborting transaction discards all dirstate changes inside transaction scope for "transactional dirstate" (see below wiki page for detail about it). https://mercurial.selenic.com/wiki/DirstateTransactionPlan Therefore, just aborting transaction causes unchanged (and unexpected) dirstate, even though subsequent commands require dirstate changes while "hg evolve". To keep dirstate changes while "hg evolve", this patch closes current running transaction, if conflict is detected in relocate(), even though exception is raised as usual. Even though "save dirstate and restore it after aborting transaction" like shelve._aborttransaction() of Mercurial can also solve this issue, this patch chose closing transaction for similarity with failure for conflict at "hg unshelve". In addition to it, closing transaction can keep any previous (implicit) changes. In newly added test, there is an additional ancestor revision, which "will be evolved safely". It is used to examine whether failure for conflict doesn't discard already relocated revision(s) while "hg evolve". It is fact for current implementation that "hg evolve" relocates each revisions in separated transactions and already relocated ones are never discarded, even if subsequent relocation fails. Though, this examination is useful to detect unintentional regression in the future.
Sat, 23 Jan 2016 06:18:01 +0900 evolve: remove meaningless transaction nesting
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sat, 23 Jan 2016 06:18:01 +0900] rev 1593
evolve: remove meaningless transaction nesting Before this patch, functions below nest transaction scope, even though they are invoked only inside a transaction scope created at _solveone(). - _solvebumped() - _solvedivergent() - relocate() via _solveunstable() or _solvebumped() Transaction nesting is useful for localizing "success" (e.g. one scope per commit inside wider scope for multiple committing). But such nesting is redundant for _solveone(), because there is no code path, which causes failure after successfully closing inner transaction(s). In addition to it, this nesting makes it complicated to close current transaction successfully with exception raising inside inner scope, like "hg shelve" at detection of conflicts. "tr.close()" is required at each outer scopes for such case. To remove meaningless transaction nesting, this patch replaces repo.transaction() in functions above by repo.currenttransaction(). This reuses transaction created at _solveone(). This patch also adds 'assert tr' after getting current running transaction, to avoid invocation of functions above without transaction.
Tue, 26 Jan 2016 15:42:01 -0800 evolve: extract logic to new method _evolvemerge
Shusen LIU <liushusen@fb.com> [Tue, 26 Jan 2016 15:42:01 -0800] rev 1592
evolve: extract logic to new method _evolvemerge This patch introduces a new method _evolvemerge to merge orig to dest in relocate method. This simplifies the code of the method relocate and allows us to re-use it later in the scope of the rework of 'hg evolve --continue'
Sat, 30 Jan 2016 16:53:12 +0100 test: add extra expected output
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 30 Jan 2016 16:53:12 +0100] rev 1591
test: add extra expected output (I forgot to amend...)
Fri, 22 Jan 2016 19:16:38 +0000 inhibit: make bookmark -D work with a list of bookmarks
Jeroen Vaelen <jeroen@fb.com> [Fri, 22 Jan 2016 19:16:38 +0000] rev 1590
inhibit: make bookmark -D work with a list of bookmarks `hg bookmark -D` was not accepting a list of bookmarks. This behavior was inconsistent with the behavior of `hg bookmark -d`, which does accept multiple bookmarks.
Sun, 17 Jan 2016 16:55:40 -0800 touch: prompt the user for what to do with the revived changeset
Laurent Charignon <lcharignon@fb.com> [Sun, 17 Jan 2016 16:55:40 -0800] rev 1589
touch: prompt the user for what to do with the revived changeset This patch improves our interface for reviving changesets. This patch makes touch not assume that the user wants to create divergence by default and gives a prompt instead. The prompt is skipped for changeset that have no living successor as no divergence would be created by reviving them anyway. To restore the previous behavior, one should now use the --allowdivergence flag. The prompt looks like: [10] <description> reviving this changeset will create divergence unless you make a duplicate. (a)llow divergence or (d)uplicate the changeset? a In further patches we will want to add one more choice to that prompt, for example having a marker between the old and revived nodes but no divergence displayed on the UI.
Wed, 27 Jan 2016 13:57:08 -0800 inhibit: fix compat with rebaseskipobsolete
Laurent Charignon <lcharignon@fb.com> [Wed, 27 Jan 2016 13:57:08 -0800] rev 1588
inhibit: fix compat with rebaseskipobsolete We wrap _computeobsoletenotrebased and _clearrebased to fix the following case: - Assuming that we have markers from revisions of the rebase set and destination set and that these markers are inhibited - At the end of the rebase the nodes are still visible because rebase operate without inhibition and skip these nodes Had we not have those markers to begin with the revisions could be hidden at the end of the rebase. We keep track in repo._obsoletenotrebased of the obsolete commits skipped by the rebase and lift the inhibition at the end of the rebase. We add three test cases to make sure that the edge cases are covered.
Tue, 19 Jan 2016 15:30:23 -0800 test: update with new graft output
Durham Goode <durham@fb.com> [Tue, 19 Jan 2016 15:30:23 -0800] rev 1587
test: update with new graft output Graft now has a --continue it seems. We need to update our test output.
Sun, 17 Jan 2016 22:02:44 -0800 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Sun, 17 Jan 2016 22:02:44 -0800] rev 1586
merge with stable
Sun, 17 Jan 2016 21:09:45 -0800 tests: fix change to help output
Pierre-Yves David <pierre-yves.david@fb.com> [Sun, 17 Jan 2016 21:09:45 -0800] rev 1585
tests: fix change to help output Core have made minor update to its documentation.
Thu, 14 Jan 2016 14:02:05 -0800 tests: change some double quotes to single quotes stable
Martin von Zweigbergk <martinvonz@google.com> [Thu, 14 Jan 2016 14:02:05 -0800] rev 1584
tests: change some double quotes to single quotes Since hg core change 58f8b29c37ff (minirst: change hgrole to use single quotes, 2016-01-12)
Thu, 14 Jan 2016 12:02:38 -0800 inhibit: fix compatibility with changes in rebase
Laurent Charignon <lcharignon@fb.com> [Thu, 14 Jan 2016 12:02:38 -0800] rev 1583
inhibit: fix compatibility with changes in rebase Because we compute the obsolete revisions before calling _computeobsoletenotrebased lifting the inhibition stopped working since 8a8ee8338e6 in core. This patch makes it work again.
Sun, 10 Jan 2016 10:52:24 -0800 inhibit: fix _filterpublic
Laurent Charignon <lcharignon@fb.com> [Sun, 10 Jan 2016 10:52:24 -0800] rev 1582
inhibit: fix _filterpublic Before this patch, _filterpublic would always filter rep._obsinhibit and not its "nodes" argument. Fortunately, we always called it with repo._obsinhibit as its "nodes" argument!
Mon, 04 Jan 2016 14:01:17 -0800 debian: blacklist test-inhibit.t
Laurent Charignon <lcharignon@fb.com> [Mon, 04 Jan 2016 14:01:17 -0800] rev 1581
debian: blacklist test-inhibit.t Since we don't add inhibit to the debian packages, let's not run test-inhibit.t
Mon, 04 Jan 2016 08:39:58 -0800 evolve: duplicate evolution summary entries (issue5014)
Laurent Charignon <lcharignon@fb.com> [Mon, 04 Jan 2016 08:39:58 -0800] rev 1580
evolve: duplicate evolution summary entries (issue5014) Since we added summary entries for trouble changesets in core we don't need to display it anymore in evolve for the version of hg with the change. Tested with 3.6.1 and 3.6.2.
Sun, 03 Jan 2016 16:47:57 +0100 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Sun, 03 Jan 2016 16:47:57 +0100] rev 1579
merge with stable
Sun, 03 Jan 2016 15:51:36 +0100 merge with the rest of stable stable
Pierre-Yves David <pierre-yves.david@fb.com> [Sun, 03 Jan 2016 15:51:36 +0100] rev 1578
merge with the rest of stable
Wed, 30 Dec 2015 03:48:11 +0530 debian: update changelog to 5.2.1 stable
Faheem Mitha <faheem@faheem.info> [Wed, 30 Dec 2015 03:48:11 +0530] rev 1577
debian: update changelog to 5.2.1
Thu, 26 Nov 2015 20:38:31 -0500 evolve: handle merge commit with single obsolete parent (issue4389)
Andrew Halberstadt <ahalberstadt@mozilla.com> [Thu, 26 Nov 2015 20:38:31 -0500] rev 1576
evolve: handle merge commit with single obsolete parent (issue4389) This handles evolving merge commits with a single obsolete parent. Merge commits with two obsolete parents are still unsupported. Note this depends on a change to merge.graft in core. Older versions of mercurial will not have this functionality. Also, test-unstable.t will fail with older versions.
Tue, 22 Dec 2015 14:11:09 +0000 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 22 Dec 2015 14:11:09 +0000] rev 1575
merge with stable
Sat, 07 Nov 2015 13:39:59 -0500 evolve: rewrite help for prune command stable
Greg Ward <greg@gerg.ca> [Sat, 07 Nov 2015 13:39:59 -0500] rev 1574
evolve: rewrite help for prune command
Sat, 07 Nov 2015 13:38:49 -0500 evolve: improve help for split command stable
Greg Ward <greg@gerg.ca> [Sat, 07 Nov 2015 13:38:49 -0500] rev 1573
evolve: improve help for split command
Sat, 07 Nov 2015 13:38:22 -0500 evolve: improve help for prev, next commands stable
Greg Ward <greg@gerg.ca> [Sat, 07 Nov 2015 13:38:22 -0500] rev 1572
evolve: improve help for prev, next commands
Sat, 07 Nov 2015 13:37:26 -0500 evolve: improve the confusing docstring for _orderrevs() stable
Greg Ward <greg@gerg.ca> [Sat, 07 Nov 2015 13:37:26 -0500] rev 1571
evolve: improve the confusing docstring for _orderrevs()
Sat, 07 Nov 2015 09:48:04 -0500 evolve: improve help for some debug commands stable
Greg Ward <greg@gerg.ca> [Sat, 07 Nov 2015 09:48:04 -0500] rev 1570
evolve: improve help for some debug commands
Fri, 06 Nov 2015 21:42:06 -0500 evolve: scattered typo fixes in comments, docstrings stable
Greg Ward <greg@gerg.ca> [Fri, 06 Nov 2015 21:42:06 -0500] rev 1569
evolve: scattered typo fixes in comments, docstrings
Mon, 14 Dec 2015 17:21:11 -0800 evolve: extract logic to new method _finalizerelocate
Shusen LIU <liushusen@fb.com> [Mon, 14 Dec 2015 17:21:11 -0800] rev 1568
evolve: extract logic to new method _finalizerelocate This patch introduces a new method _finalizerelocate to finalize current state after merge states in relocate method. This simplifies the code of the method relocate and allows us to modify it later to support a continued keywork to implement evolve state.
Mon, 14 Dec 2015 17:02:55 -0800 evolve: extract logic to new method _relocatecommit
Shusen LIU <liushusen@fb.com> [Mon, 14 Dec 2015 17:02:55 -0800] rev 1567
evolve: extract logic to new method _relocatecommit This patch introduces a new method _relocatecommit to commit current state after merge states in relocate method. This simplifies the code of the method relocate and allows us to modify it later to support a continued keywork to implement evolve state.
Thu, 17 Dec 2015 16:00:32 +0000 evolve: apply API change to 'merge.update'
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 17 Dec 2015 16:00:32 +0000] rev 1566
evolve: apply API change to 'merge.update' Mercurial core43c00ca887d1 (future 3.7) changed the signature of the 'mercurial.merge.update', this impact our code so we update it. This
Mon, 14 Dec 2015 16:29:55 -0800 debian: don't refer to deleted tests/run-tests.py in debian/rules
Martin von Zweigbergk <martinvonz@google.com> [Mon, 14 Dec 2015 16:29:55 -0800] rev 1565
debian: don't refer to deleted tests/run-tests.py in debian/rules tests/run-tests.py was deleted in 25a0c31882df (tests: remove the custom run-tests.py, 2015-11-02), but we still refer to it in debian/rules. Fix by having the user define a HGSRC variable when calling 'debuild' (with e.g '-e HGSRC=~/hg').
Fri, 11 Dec 2015 12:27:37 -0800 prune: changing bookmark argument to be a list
Shubhanshu Agrawal <agrawal.shubhanshu@gmail.com> [Fri, 11 Dec 2015 12:27:37 -0800] rev 1564
prune: changing bookmark argument to be a list Currently prune works with a single bookmark the changes in this patch modifies the prune command to accept a list of bookmarks Also changes to inhibit module which internally calls the cmdprune function. the change is to wrap the bookmark input into a list.
Fri, 11 Dec 2015 10:42:46 -0800 prune: remove a list of bookmarks
Shubhanshu Agrawal <agrawal.shubhanshu@gmail.com> [Fri, 11 Dec 2015 10:42:46 -0800] rev 1563
prune: remove a list of bookmarks Currently prune works with a single bookmark, the changes in this patch modifies the prune module to work with a list of bookmarks Building on this we can take a list of bookmarks as input and remove all of them in a single go
Fri, 11 Dec 2015 11:15:33 +0000 test: adapt to fix to "known" wireprotocol command
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 11 Dec 2015 11:15:33 +0000] rev 1562
test: adapt to fix to "known" wireprotocol command Core fixed a bug in discovery (in b64b6fdc5c9b) and this is showing up in our test output.
Thu, 10 Dec 2015 15:55:07 -0800 evolve: renaming local variables
Shubhanshu Agrawal <agrawal.shubhanshu@gmail.com> [Thu, 10 Dec 2015 15:55:07 -0800] rev 1561
evolve: renaming local variables Renaming local variables to be more precise, i want to store a different list of bookmarks(input-list) and it would be hard to understand what marks represents in that change therefore renaming it to repomarks. Renames mark to bookmark, which will make the changes in next patch more understandable, when it is pluraized. Also renames bookmarks (module) to bookmarksmod so as to free up the name when bookmark gets pluralized.
Thu, 10 Dec 2015 15:34:34 -0800 inhibit: backout 23a34dce5131 remove unused bookmark operation wrapping
Laurent Charignon <lcharignon@fb.com> [Thu, 10 Dec 2015 15:34:34 -0800] rev 1560
inhibit: backout 23a34dce5131 remove unused bookmark operation wrapping This breaks potentially a lot of things. Let's give a change to extensions maintainers to adapt to the new bookmarks.write api before removing this code right away.
Fri, 11 Dec 2015 10:51:04 +0000 readme: add something about bookmark within transaction
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 11 Dec 2015 10:51:04 +0000] rev 1559
readme: add something about bookmark within transaction
Thu, 10 Dec 2015 15:09:25 -0800 commitwrapper: use bookmarks.recordchange instead of bookmarks.write
Laurent Charignon <lcharignon@fb.com> [Thu, 10 Dec 2015 15:09:25 -0800] rev 1558
commitwrapper: use bookmarks.recordchange instead of bookmarks.write Before this patch we were using the deprecated API bookmarks.write, this patch replace its usage by the new API call bookmarks.recordchange.
Thu, 10 Dec 2015 14:43:31 -0800 next: replace call to bookmarks.write by bookmarks.recordchange
Laurent Charignon <lcharignon@fb.com> [Thu, 10 Dec 2015 14:43:31 -0800] rev 1557
next: replace call to bookmarks.write by bookmarks.recordchange bookmarks.write is now deprecated, we are moving to the new api: bookmarks.recordchange.
Thu, 10 Dec 2015 14:43:00 -0800 previous: replace call to bookmarks.write by bookmarks.recordchange
Laurent Charignon <lcharignon@fb.com> [Thu, 10 Dec 2015 14:43:00 -0800] rev 1556
previous: replace call to bookmarks.write by bookmarks.recordchange bookmarks.write is now deprecated, we are moving to the new api: bookmarks.recordchange.
Thu, 10 Dec 2015 14:17:27 -0800 prune: use bookmarks.recordchange instead of bookmarks.write
Laurent Charignon <lcharignon@fb.com> [Thu, 10 Dec 2015 14:17:27 -0800] rev 1555
prune: use bookmarks.recordchange instead of bookmarks.write Before this patch we were using the deprecated bookmarks.write instead of bookmarks.recordchange in prune
Fri, 11 Dec 2015 10:49:29 +0000 transaction: fix release order in 'rewrite'
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 11 Dec 2015 10:49:29 +0000] rev 1554
transaction: fix release order in 'rewrite' This was wrong for quite sometime.
Fri, 04 Dec 2015 15:28:29 -0800 check-code: make drophack comply with check-code
Laurent Charignon <lcharignon@fb.com> [Fri, 04 Dec 2015 15:28:29 -0800] rev 1553
check-code: make drophack comply with check-code
Fri, 04 Dec 2015 15:28:00 -0800 check-code: make directaccess.py comply with check-code
Laurent Charignon <lcharignon@fb.com> [Fri, 04 Dec 2015 15:28:00 -0800] rev 1552
check-code: make directaccess.py comply with check-code
Fri, 04 Dec 2015 15:31:19 -0800 check-code: make inhibit.py comply with check-code
Laurent Charignon <lcharignon@fb.com> [Fri, 04 Dec 2015 15:31:19 -0800] rev 1551
check-code: make inhibit.py comply with check-code
Fri, 04 Dec 2015 15:31:34 -0800 check-code: make obsolete.py comply with check-code
Laurent Charignon <lcharignon@fb.com> [Fri, 04 Dec 2015 15:31:34 -0800] rev 1550
check-code: make obsolete.py comply with check-code
Fri, 04 Dec 2015 15:21:16 -0800 check-code: make pushexperiment.py comply with check-code
Laurent Charignon <lcharignon@fb.com> [Fri, 04 Dec 2015 15:21:16 -0800] rev 1549
check-code: make pushexperiment.py comply with check-code
Fri, 04 Dec 2015 15:19:36 -0800 check-code: make simple4server.py comply with check-code
Laurent Charignon <lcharignon@fb.com> [Fri, 04 Dec 2015 15:19:36 -0800] rev 1548
check-code: make simple4server.py comply with check-code
Fri, 04 Dec 2015 15:10:53 -0800 check-code: make evolve.py comply with check-code
Laurent Charignon <lcharignon@fb.com> [Fri, 04 Dec 2015 15:10:53 -0800] rev 1547
check-code: make evolve.py comply with check-code
Fri, 04 Dec 2015 14:00:59 -0800 evolve: fix test-inhibit to match latest hg
Laurent Charignon <lcharignon@fb.com> [Fri, 04 Dec 2015 14:00:59 -0800] rev 1546
evolve: fix test-inhibit to match latest hg When I fixed an issue in core about rebaseset 40a2f972f26d (that I introduced before), it restored the original behavior of inhibit with rebase. This patch fixes test-inhibit to match the latest hg.
Fri, 04 Dec 2015 14:00:48 -0800 evolve: fix test-stabilize-conflict.t to match new extra computation in core
Laurent Charignon <lcharignon@fb.com> [Fri, 04 Dec 2015 14:00:48 -0800] rev 1545
evolve: fix test-stabilize-conflict.t to match new extra computation in core Recent patches changed the way we compute extras for rebase and graft. This changes the hashes in evolve's tests. This patch fixes the test test-stabilize-conflict.t.
Fri, 04 Dec 2015 14:01:28 -0800 evolve: fix test-sharing.t to match new extra computation in core
Laurent Charignon <lcharignon@fb.com> [Fri, 04 Dec 2015 14:01:28 -0800] rev 1544
evolve: fix test-sharing.t to match new extra computation in core Recent patches changed the way we compute extras for rebase and graft. This changes the hashes in evolve's tests. This patch fixes the test test-sharing.t
Fri, 04 Dec 2015 14:01:36 -0800 evolve: fix test-tutorial.t to match new extra computation in core
Laurent Charignon <lcharignon@fb.com> [Fri, 04 Dec 2015 14:01:36 -0800] rev 1543
evolve: fix test-tutorial.t to match new extra computation in core Recent patches changed the way we compute extras for rebase and graft. This changes the hashes in evolve's tests. This patch fixes the test test-tutorial.t
Mon, 30 Nov 2015 16:48:40 -0800 inhibit: make rebase see obsolescence even for visible nodes
Laurent Charignon <lcharignon@fb.com> [Mon, 30 Nov 2015 16:48:40 -0800] rev 1542
inhibit: make rebase see obsolescence even for visible nodes Rebase changed recently to take advantage of obsolescence markers to reduce the number of conflicts to resolve. Inhibit users were unable to leverage this new feature because none of their visible nodes could be obsolete. This patch makes the nodes that would be obsolete without inhibit, actually obsolete for the duration of the rebase to take advantage of the feature mentioned before.
Tue, 24 Nov 2015 17:16:27 -0800 inhibit: remove unused bookmark operation wrapping
Laurent Charignon <lcharignon@fb.com> [Tue, 24 Nov 2015 17:16:27 -0800] rev 1541
inhibit: remove unused bookmark operation wrapping Before this patch, inhibit was wrapping bookmarks.write and bookmarks.recordchange. Since all the usage of bookmarks.write are not replaced by bookmarks.recordchange all bookmarks operation happen in a transaction. Inhibit already wraps the transaction mechanism to make sure that no revision can end up being obsolete and visible. This makes the wrapping of bookmarks.write superfluous. Wrapping bookmarks.recordchange was wrong in the first place and redundant with wrapping transactions.
Tue, 01 Dec 2015 10:25:38 -0800 inhibit: update test with new behavior from core
Laurent Charignon <lcharignon@fb.com> [Tue, 01 Dec 2015 10:25:38 -0800] rev 1540
inhibit: update test with new behavior from core The recent changes in core (to make sure that all bookmarks write are done at the end of a transaction) changed the behavior of inhibit. When one rebases a set of hidden revs somewhere, the hidden revs become visible at the end of the rebase. Both the previous behavior and new behavior seems acceptable but the tests have to be changed subsequently. This patch modifies one of the test for inhibit when the case mentioned above happens. We prune the revs inhibited by the rebase to make the change minimal.
Thu, 19 Nov 2015 10:47:32 -0800 inhibit: remove unused import
Laurent Charignon <lcharignon@fb.com> [Thu, 19 Nov 2015 10:47:32 -0800] rev 1539
inhibit: remove unused import The error module from mercurial was imported but unused in the inhibit code.
Fri, 20 Nov 2015 10:30:42 -0800 inhibit: improve handling of error cases for bookmark -D
Laurent Charignon <lcharignon@fb.com> [Fri, 20 Nov 2015 10:30:42 -0800] rev 1538
inhibit: improve handling of error cases for bookmark -D Before this patch bookmark -D was crashing in some cases like: hg book -Dmaster-fix. This was because -m is a valid option for hg bookmark. This patch disallows using -m with -D (moving and pruning does not make much sense) and throws an error instead of crashing if the command is malformed.
Wed, 18 Nov 2015 13:47:26 -0800 directaccess: fix case of shortened hash containing only digits
Laurent Charignon <lcharignon@fb.com> [Wed, 18 Nov 2015 13:47:26 -0800] rev 1537
directaccess: fix case of shortened hash containing only digits For directaccess, there are four cases for what looks like short hashes made of digits only: 1 | the hash is a revision number and not a short hash for another revision: we don't change the visibility 2 | the hash is a revision number and a short hash for another revision: we don't change the visibility 3 | the hash is not a revision number and not a short hash for another revision: we don't change the visibility 4 | the hash is not a revision number but is a short hash for another revision: we make it visible Before the patch we were not lifting visibility in case number 4. This patch fixes the issue.
Tue, 17 Nov 2015 17:06:07 -0800 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com> [Tue, 17 Nov 2015 17:06:07 -0800] rev 1536
evolve: evolve --divergent failed when merge had nothing to do (issue4950) Before this patch, if the divergence resolution lead to an empty commit, the transaction would be rolled back and the divergence not resolved. This patch allows empty commits in that case. It is legitimate to end up with an empty commit in that case, for example when divergent commits differ over their commit messages.
Tue, 17 Nov 2015 20:25:15 -0800 inhibit: use dirty revset trick to speedup the inhibit search space.
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 17 Nov 2015 20:25:15 -0800] rev 1535
inhibit: use dirty revset trick to speedup the inhibit search space. See documentation for details. I'm a bit sad about this changesets.
Tue, 17 Nov 2015 20:19:32 -0800 inhibit: use 'repo.revs' instead of 'repo.set'
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 17 Nov 2015 20:19:32 -0800] rev 1534
inhibit: use 'repo.revs' instead of 'repo.set' This skip the creation of a changectx object.
Tue, 17 Nov 2015 22:43:17 -0800 _inhibitmarkers: turn the result from generator into a list
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 17 Nov 2015 22:43:17 -0800] rev 1533
_inhibitmarkers: turn the result from generator into a list A generator object is always True, we have to turn it into a list in order to be able to use it in the tests. Before this patch we were rewriting the 'obsinhibit' file all the time, this had a performance impact especially on repository where transaction are expensive (hooks, cache invalidation, etc). Writing this file less often have a minor effect on test where a stripped changeset does not get removed from the obsinhibit file is still inhibited when unbundled back. I think this is fine and I'm moving forward.
Fri, 06 Nov 2015 21:37:38 -0500 split: drop the experimental flag
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 06 Nov 2015 21:37:38 -0500] rev 1532
split: drop the experimental flag I've been using it without issue for some time. The only blocker in my mind was the lack of commit message preservation and this is now fixed.
Fri, 06 Nov 2015 21:34:24 -0500 split: preserve original changesets description
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 06 Nov 2015 21:34:24 -0500] rev 1531
split: preserve original changesets description Losing the description on split is to much an issue, we offer the original description to edition for every part of the split.
Fri, 06 Nov 2015 21:15:15 -0500 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 06 Nov 2015 21:15:15 -0500] rev 1530
merge with stable
Fri, 06 Nov 2015 21:14:35 -0500 readme: updateing changelog stable
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 06 Nov 2015 21:14:35 -0500] rev 1529
readme: updateing changelog We forgot a couple of recent improvement.
Fri, 06 Nov 2015 15:04:45 -0500 evolve: rewrite command help (evolve command only) stable
Greg Ward <greg@gerg.ca> [Fri, 06 Nov 2015 15:04:45 -0500] rev 1528
evolve: rewrite command help (evolve command only)
Fri, 06 Nov 2015 18:37:16 -0500 parents: avoid locking the repository during 'hg parents' stable
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 06 Nov 2015 18:37:16 -0500] rev 1527
parents: avoid locking the repository during 'hg parents' The wrapping code was initially written for update and pull who need the lock anyway. We duplicated the logic in the parent case to remove the need for locking.
Fri, 06 Nov 2015 18:02:05 -0500 README: update instructions for running tests. stable
Greg Ward <greg@gerg.ca> [Fri, 06 Nov 2015 18:02:05 -0500] rev 1526
README: update instructions for running tests.
Mon, 02 Nov 2015 11:08:32 +0000 tests: remove the custom run-tests.py
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 02 Nov 2015 11:08:32 +0000] rev 1525
tests: remove the custom run-tests.py This test-runners is a copy from the Mercurial one and slowly drift out of sync. Use the Mercurial's core test runners instead.
Mon, 02 Nov 2015 11:07:34 +0000 make: clean test related target
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 02 Nov 2015 11:07:34 +0000] rev 1524
make: clean test related target We removed the runner, so they are broken. We can reintroduce them later with proper data to fetch an official 'run-tests.py' runner.
Mon, 02 Nov 2015 11:05:28 +0000 test: use 'dummyssh' from the run-tests directory
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 02 Nov 2015 11:05:28 +0000] rev 1523
test: use 'dummyssh' from the run-tests directory This is a step toward not shipping our own test runners and relying on the official Mercurial one.
Mon, 02 Nov 2015 11:04:44 +0000 test: use 'killdaemons.py' from the run-tests directory
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 02 Nov 2015 11:04:44 +0000] rev 1522
test: use 'killdaemons.py' from the run-tests directory This is a step toward not shipping our own test runners and relying on the official Mercurial one.
Mon, 02 Nov 2015 00:39:40 +0000 merge back with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 02 Nov 2015 00:39:40 +0000] rev 1521
merge back with stable
Mon, 02 Nov 2015 00:39:23 +0000 Added tag 5.2.1 for changeset c15d6168412f stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 02 Nov 2015 00:39:23 +0000] rev 1520
Added tag 5.2.1 for changeset c15d6168412f
Mon, 02 Nov 2015 00:39:06 +0000 prepare version 5.1.2 stable 5.2.1
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 02 Nov 2015 00:39:06 +0000] rev 1519
prepare version 5.1.2
Mon, 02 Nov 2015 00:38:18 +0000 merge with default stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 02 Nov 2015 00:38:18 +0000] rev 1518
merge with default there is some 3.6 related fix and test change that we need on default. No other significant change happened since last release expect for split, still marked experimental. So we prepare for a bugfix release.
Mon, 02 Nov 2015 00:32:44 +0000 split: mark the command as experimental
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 02 Nov 2015 00:32:44 +0000] rev 1517
split: mark the command as experimental It has a bit too many rough edge for now.
Fri, 30 Oct 2015 15:48:13 +0000 tests: run test with 3.6 and apply test change
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 Oct 2015 15:48:13 +0000] rev 1516
tests: run test with 3.6 and apply test change Tested with 3.4, 3.5 and 3.6. Some minor test update had to be done.
Fri, 30 Oct 2015 16:04:37 +0000 prune: have dirstate collaborate with transaction
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 Oct 2015 16:04:37 +0000] rev 1515
prune: have dirstate collaborate with transaction With 3.6, dirstate update can work with transaction to ensure proper rollback. We do it if the mercurial version permit it.
Fri, 30 Oct 2015 16:04:19 +0000 evolve: have dirstate collaborate with transaction
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 Oct 2015 16:04:19 +0000] rev 1514
evolve: have dirstate collaborate with transaction With 3.6, dirstate update can work with transaction to ensure proper rollback. We do it if the mercurial version permit it.
Fri, 09 Oct 2015 16:21:30 -0700 prune: reuse revset from repair instead of copy-pasting code
Ryan McElroy <rmcelroy@fb.com> [Fri, 09 Oct 2015 16:21:30 -0700] rev 1513
prune: reuse revset from repair instead of copy-pasting code
Mon, 12 Oct 2015 01:23:59 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 12 Oct 2015 01:23:59 -0700] rev 1512
merge with stable
Mon, 12 Oct 2015 01:22:41 -0700 evolve: compatibility with coming 3.6 stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 12 Oct 2015 01:22:41 -0700] rev 1511
evolve: compatibility with coming 3.6 Some function in the import stack changed, we have to adapt.
Tue, 29 Sep 2015 15:40:28 -0400 evolve: be more complete about copying extra from old revisions
Augie Fackler <raf@durin42.com> [Tue, 29 Sep 2015 15:40:28 -0400] rev 1510
evolve: be more complete about copying extra from old revisions For 'hg evolve' we want to copy all extra-level metadata except for branch. This keeps the experimental topics extension from getting obliterated by evolve runs. Many hashes in tests changed due to some extra data coming along for the ride in various places, but no functionality that was tested. It's plausible that this copies too much metadata - maybe we should be dropping rebase_src or convert_revision as well. Right now no tools do that, so I'm biasing towards preserving everything except branch when copying metadata for now.
Wed, 30 Sep 2015 23:33:00 +0900 evolve: ignore ui argument passed to help loader
Yuya Nishihara <yuya@tcha.org> [Wed, 30 Sep 2015 23:33:00 +0900] rev 1509
evolve: ignore ui argument passed to help loader The API changed at Mercurial e0c572d4d112.
Tue, 29 Sep 2015 09:47:10 -0700 directaccess: inspect trees of len() > 3
Durham Goode <durham@fb.com> [Tue, 29 Sep 2015 09:47:10 -0700] rev 1508
directaccess: inspect trees of len() > 3 Previously, when inspecting revset AST's we'd only traverse down the tree if it was length 3 ([op, left, right]). In some situations, like 'or' the tree node will be greater than length 3 ([op, first, second, ..., nth]). So we need to traverse all the parts of the node to catch all the symbols.
Mon, 21 Sep 2015 22:30:44 +0900 debugobsconvert: make sure obsstore is loaded before version comparison
Yuya Nishihara <yuya@tcha.org> [Mon, 21 Sep 2015 22:30:44 +0900] rev 1507
debugobsconvert: make sure obsstore is loaded before version comparison hg 44918682093f delays loading obsstore, so we have to access _all to get the correct store version.
Wed, 16 Sep 2015 16:50:06 -0700 evolve: use repo._bookmarks.recordchange instead of repo._bookmarks.write
Laurent Charignon <lcharignon@fb.com> [Wed, 16 Sep 2015 16:50:06 -0700] rev 1506
evolve: use repo._bookmarks.recordchange instead of repo._bookmarks.write We want to get rid of the api repo._bookmarks.write and this patch removes its use in evolve.py. Before this patch, we were using repo._bookmarks.write to save bookmarks change immediately instead of repo._bookmarks.recordchange that write change when transaction ends.
Wed, 16 Sep 2015 17:12:38 -0700 evolve: indentation change for making next patch more legible
Laurent Charignon <lcharignon@fb.com> [Wed, 16 Sep 2015 17:12:38 -0700] rev 1505
evolve: indentation change for making next patch more legible In the next patch: "evolve: use repo._bookmarks.recordchange instead of repo._bookmarks.write" we need to add a transaction in the rewrite function. To do so adds an indentation level and makes the patch harder to review. This patch makes the indentation change so that the next patch is easier to review.
Mon, 14 Sep 2015 13:52:34 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Sep 2015 13:52:34 -0700] rev 1504
merge with stable
Mon, 14 Sep 2015 13:48:34 -0700 next/prev: properly lock repo before touching bookmarks stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Sep 2015 13:48:34 -0700] rev 1503
next/prev: properly lock repo before touching bookmarks
Mon, 14 Sep 2015 13:48:34 -0700 next/prev: properly lock repo before touching bookmarks
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Sep 2015 13:48:34 -0700] rev 1502
next/prev: properly lock repo before touching bookmarks
Mon, 14 Sep 2015 13:23:43 -0700 prune: ensure we prune bookmarks in a transaction stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 14 Sep 2015 13:23:43 -0700] rev 1501
prune: ensure we prune bookmarks in a transaction
Thu, 10 Sep 2015 16:24:50 -0400 next: add support for --dry-run
timeless@mozdev.org [Thu, 10 Sep 2015 16:24:50 -0400] rev 1500
next: add support for --dry-run also adds support to prev
Wed, 09 Sep 2015 22:25:37 -0400 evolve: spelling uncommitted
timeless@mozdev.org [Wed, 09 Sep 2015 22:25:37 -0400] rev 1499
evolve: spelling uncommitted
Wed, 09 Sep 2015 22:23:48 -0400 evolve: annotate translatable strings with _()
timeless@mozdev.org [Wed, 09 Sep 2015 22:23:48 -0400] rev 1498
evolve: annotate translatable strings with _()
Wed, 09 Sep 2015 22:22:01 -0400 evolve: do not capitalize description of next/previous
timeless@mozdev.org [Wed, 09 Sep 2015 22:22:01 -0400] rev 1497
evolve: do not capitalize description of next/previous
Wed, 09 Sep 2015 22:13:11 -0400 evolve: _() should not contain %
timeless@mozdev.org [Wed, 09 Sep 2015 22:13:11 -0400] rev 1496
evolve: _() should not contain %
Wed, 09 Sep 2015 19:43:24 -0400 evolve: add progress for _obsrelsethashtree
timeless@mozdev.org [Wed, 09 Sep 2015 19:43:24 -0400] rev 1495
evolve: add progress for _obsrelsethashtree
Wed, 09 Sep 2015 19:43:14 -0400 evolve: add progress for the obsmarkers discovery parts
timeless@mozdev.org [Wed, 09 Sep 2015 19:43:14 -0400] rev 1494
evolve: add progress for the obsmarkers discovery parts
Wed, 09 Sep 2015 19:40:54 -0400 test-obsolete: clarify divergence detection output order
timeless@mozdev.org [Wed, 09 Sep 2015 19:40:54 -0400] rev 1493
test-obsolete: clarify divergence detection output order
Mon, 17 Aug 2015 17:01:38 -0700 directaccesss: also look for symbol into list
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 17 Aug 2015 17:01:38 -0700] rev 1492
directaccesss: also look for symbol into list revrange is now much smarted and optimise multiple simple symbol (like hash) into an efficient '_list' call. So we need to look into these to find user provided input too.
Wed, 12 Aug 2015 20:38:39 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 12 Aug 2015 20:38:39 -0700] rev 1491
merge with stable
Wed, 12 Aug 2015 10:51:20 -0700 inhibit: fix inhibit working with non-inhibit repos stable
Durham Goode <durham@fb.com> [Wed, 12 Aug 2015 10:51:20 -0700] rev 1490
inhibit: fix inhibit working with non-inhibit repos Inhibit was breaking when two repos were in memory, but one was not an inhibit repo (like when doing a local pull between two repos). The fix is to add inhibitenabled checks to all the places where inhibit does global wrapping of commands (every code path from the extsetup wrappers).
Wed, 12 Aug 2015 16:08:05 -0700 directaccess: don't try to partialmatch things that aren't hashes stable
Siddharth Agarwal <sid0@fb.com> [Wed, 12 Aug 2015 16:08:05 -0700] rev 1489
directaccess: don't try to partialmatch things that aren't hashes Trying to partialmatch identifiers like '.' turns out to be (a) pointless and (b) extremely slow. On a repo with a million commits, with directaccess enabled, hg log -r .^::. goes from 2.1 seconds to 0.5.
Mon, 10 Aug 2015 00:44:53 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 10 Aug 2015 00:44:53 -0700] rev 1488
merge with stable
Mon, 10 Aug 2015 00:41:18 -0700 next: properly report no children when --evolve is used stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 10 Aug 2015 00:41:18 -0700] rev 1487
next: properly report no children when --evolve is used If no aspiring children exist, 'hg next --evolve' should properly issue an error message instead of crashing.
Mon, 10 Aug 2015 00:24:15 -0700 inhibit: do not search for visible obsolete changeset during stripping stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 10 Aug 2015 00:24:15 -0700] rev 1486
inhibit: do not search for visible obsolete changeset during stripping Stripping use transaction in an unorthodox way. We should not run the inhibit postclose hooks as it can lead to crash.
Sat, 08 Aug 2015 12:42:57 -0700 split: handle bookmarks instead of leaving them on precursor
Laurent Charignon <lcharignon@fb.com> [Sat, 08 Aug 2015 12:42:57 -0700] rev 1485
split: handle bookmarks instead of leaving them on precursor Before this patch we were leaving the bookmarks on the precursor of the split instead of moving them on the tip of the split chain. We add a test to verify the behavior.
Sat, 08 Aug 2015 12:45:36 -0700 split: don't update before it is actually needed
Laurent Charignon <lcharignon@fb.com> [Sat, 08 Aug 2015 12:45:36 -0700] rev 1484
split: don't update before it is actually needed Before this patch, we were updating the working copy parent needlessly and before the error checking. This patch fixes the issue.
Sat, 08 Aug 2015 12:16:55 -0700 split: add more output to the test
Laurent Charignon <lcharignon@fb.com> [Sat, 08 Aug 2015 12:16:55 -0700] rev 1483
split: add more output to the test Before this patch, we were not displaying the final graph resulting from the tests but just the obsolscencence markers. This patch adds more output to the test to make it more descriptive.
Sat, 08 Aug 2015 12:12:16 -0700 split: fix commit message numbering error in the test
Laurent Charignon <lcharignon@fb.com> [Sat, 08 Aug 2015 12:12:16 -0700] rev 1482
split: fix commit message numbering error in the test Before this patch, the test was wrong and the successors of a splitted commits all had the same commit messages. This patch makes the test right making sure that the numbering of the split successors is accurate.
Wed, 24 Jun 2015 16:27:36 -0700 evolve: handle split commit for instability
Laurent Charignon <lcharignon@fb.com> [Wed, 24 Jun 2015 16:27:36 -0700] rev 1481
evolve: handle split commit for instability
Fri, 07 Aug 2015 13:59:19 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 07 Aug 2015 13:59:19 -0700] rev 1480
merge with stable
Fri, 07 Aug 2015 11:39:51 -0700 evolve: add test for instability stable
Laurent Charignon <lcharignon@fb.com> [Fri, 07 Aug 2015 11:39:51 -0700] rev 1479
evolve: add test for instability
Thu, 18 Jun 2015 16:48:53 -0700 evolve: add a command to split commits
Laurent Charignon <lcharignon@fb.com> [Thu, 18 Jun 2015 16:48:53 -0700] rev 1478
evolve: add a command to split commits Before this patch, to split commit one had to use prune. This patch adds a new command called split that prompts the user interactively to split a given changeset with record/crecord.
Mon, 03 Aug 2015 11:29:27 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 03 Aug 2015 11:29:27 -0700] rev 1477
merge with stable
Sat, 01 Aug 2015 22:16:26 -0400 test-inhibit: simplify push destinations for Windows stable
Matt Harbison <matt_harbison@yahoo.com> [Sat, 01 Aug 2015 22:16:26 -0400] rev 1476
test-inhibit: simplify push destinations for Windows This was aborting because $pwd is expanding to 'C:/path/to/tests': - pushing to file://$TESTTMP/inhibit2 - abort: hidden revision '003a4735afde'! - (use --hidden to access hidden revisions) + abort: file:// URLs can only refer to localhost
Sat, 01 Aug 2015 21:54:00 -0400 test-sharing: fix globs for Windows stable
Matt Harbison <matt_harbison@yahoo.com> [Sat, 01 Aug 2015 21:54:00 -0400] rev 1475
test-sharing: fix globs for Windows
Wed, 29 Jul 2015 09:55:50 -0700 inhibit: don't abort when directaccess is not enabled
Laurent Charignon <lcharignon@fb.com> [Wed, 29 Jul 2015 09:55:50 -0700] rev 1474
inhibit: don't abort when directaccess is not enabled When directaccess is not enabled, we should just print a warning and not set up inhibit. We don't need to abort in that case. Example: if the user is running hg showconfig, we don't want to crash as the command is unrelated to inhibit.
Fri, 10 Jul 2015 22:58:13 +0100 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 10 Jul 2015 22:58:13 +0100] rev 1473
merge with stable
Thu, 09 Jul 2015 12:42:07 -0700 inhibit: add missing locking in wrapper for obsmarker creation stable
Laurent Charignon <lcharignon@fb.com> [Thu, 09 Jul 2015 12:42:07 -0700] rev 1472
inhibit: add missing locking in wrapper for obsmarker creation The develwarning for transaction without lock rightfully pointed out to this issue. Before this patch we were not locking in the transaction for obsmarker creation and therefore showing the warnings.
Thu, 25 Jun 2015 13:33:50 -0700 evolve: (issue4386) cleanup, split, fold and bijection in `hg prune`
Laurent Charignon <lcharignon@fb.com> [Thu, 25 Jun 2015 13:33:50 -0700] rev 1471
evolve: (issue4386) cleanup, split, fold and bijection in `hg prune` Before this patch, the prune command was splitting and folding implicitely based on the number of successors and precursors. This patch makes the two behavior explicit by requesting a flag to perform a split or a fold.
Tue, 30 Jun 2015 18:32:12 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 30 Jun 2015 18:32:12 -0700] rev 1470
merge with stable
Fri, 26 Jun 2015 22:26:48 +0200 evolve: fix typo in fold docstring stable
André Sintzoff <andre.sintzoff@gmail.com> [Fri, 26 Jun 2015 22:26:48 +0200] rev 1469
evolve: fix typo in fold docstring
Fri, 26 Jun 2015 22:25:57 +0200 evolve: remove trailing spaces stable
André Sintzoff <andre.sintzoff@gmail.com> [Fri, 26 Jun 2015 22:25:57 +0200] rev 1468
evolve: remove trailing spaces
Wed, 24 Jun 2015 16:54:23 -0700 evolve: dedupe divergents when running evolve --all --any or evolve --rev stable
Laurent Charignon <lcharignon@fb.com> [Wed, 24 Jun 2015 16:54:23 -0700] rev 1467
evolve: dedupe divergents when running evolve --all --any or evolve --rev Before this patch, when running evolve --all --any or evolve --rev with the --divergent flag, we were selecting all of the divergents. After solving the first one, its counterparts would get pruned and potentially hidden which would crash when trying to resolve them. This patch introduces logic to dedupe the divergents to be resolved by keeping only one per group of divergent with the lower revision number.
Wed, 24 Jun 2015 16:38:24 -0700 evolve: remove unused warning message in _solvedivergent stable
Laurent Charignon <lcharignon@fb.com> [Wed, 24 Jun 2015 16:38:24 -0700] rev 1466
evolve: remove unused warning message in _solvedivergent Before this patch, we were checking for a case where a divergent changeset could be public and printing a warning in that case. When we compute the divergent set in the obsolete module we explicitely look for not public() changesets. This patch removes this unused warning.
Mon, 29 Jun 2015 02:30:27 -0700 compat: use svfs instead of sopener stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 29 Jun 2015 02:30:27 -0700] rev 1465
compat: use svfs instead of sopener The "new" attribute is about 2 years old so let's move on.
Fri, 26 Jun 2015 00:59:22 -0700 fold: avoid using x:y in the help stable
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 26 Jun 2015 00:59:22 -0700] rev 1464
fold: avoid using x:y in the help Suggesting "x:y" is a bad idea because x:y is a very deceptive revset.
Thu, 25 Jun 2015 09:53:53 -0700 evolve: improve the help of the fold command stable
Laurent Charignon <lcharignon@fb.com> [Thu, 25 Jun 2015 09:53:53 -0700] rev 1463
evolve: improve the help of the fold command The help of the fold command needed a little rework. This patch makes it a little less verbose and adds an example. It also highlights a little more the importance of the --exact flag.
Fri, 26 Jun 2015 00:07:13 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 26 Jun 2015 00:07:13 -0700] rev 1462
merge with stable
Fri, 26 Jun 2015 00:05:37 -0700 Added tag 5.2.0 for changeset 44a9dcb3fefc stable
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 26 Jun 2015 00:05:37 -0700] rev 1461
Added tag 5.2.0 for changeset 44a9dcb3fefc
Fri, 26 Jun 2015 00:05:25 -0700 merge with 3.3 stable 5.2.0
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 26 Jun 2015 00:05:25 -0700] rev 1460
merge with 3.3
Fri, 26 Jun 2015 00:04:38 -0700 fix version number mercurial-3.3
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 26 Jun 2015 00:04:38 -0700] rev 1459
fix version number
Fri, 26 Jun 2015 00:04:22 -0700 fix debian changelog mercurial-3.3
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 26 Jun 2015 00:04:22 -0700] rev 1458
fix debian changelog
Thu, 25 Jun 2015 17:46:24 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 25 Jun 2015 17:46:24 -0700] rev 1457
merge with stable
Thu, 25 Jun 2015 17:45:25 -0700 Added tag 5.2.0 for changeset 00026533ff9f stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 25 Jun 2015 17:45:25 -0700] rev 1456
Added tag 5.2.0 for changeset 00026533ff9f
Thu, 25 Jun 2015 17:43:10 -0700 merge with preparation for version 5.2.0 stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 25 Jun 2015 17:43:10 -0700] rev 1455
merge with preparation for version 5.2.0
Thu, 25 Jun 2015 17:42:07 -0700 prepare version 5.2 mercurial-3.3
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 25 Jun 2015 17:42:07 -0700] rev 1454
prepare version 5.2
Thu, 25 Jun 2015 17:38:40 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 25 Jun 2015 17:38:40 -0700] rev 1453
merge with stable (restore test for Mercurial default branch
Thu, 25 Jun 2015 17:37:43 -0700 merge back with 3.3 compat branch stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 25 Jun 2015 17:37:43 -0700] rev 1452
merge back with 3.3 compat branch
Thu, 25 Jun 2015 17:22:17 -0700 tests: adapt the test for Mercurial 3.3 mercurial-3.3
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 25 Jun 2015 17:22:17 -0700] rev 1451
tests: adapt the test for Mercurial 3.3 Some fix in the obsolete parent directory warning where also necessary.
Thu, 25 Jun 2015 16:55:27 -0700 merge with stable stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 25 Jun 2015 16:55:27 -0700] rev 1450
merge with stable Test are updated to run with current mercurial stable (3.4.1)
Wed, 24 Jun 2015 20:06:45 -0700 next: add a --evolve option
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 24 Jun 2015 20:06:45 -0700] rev 1449
next: add a --evolve option When on a topological head, this option will trigger the evolution of a unstable changeset that will result in a children of the current working copy parent. This should ease stacked changesets workflow by allowing to stick to prev and next to move through a stack of diff, evolving part of it on demand when needed. In case of ambiguity, the command will ask the user to choose. We need a better definition of "the stack of changesets I'm working on" to be able to seamlessly handling branching.
Wed, 24 Jun 2015 19:42:01 -0700 next: print some message when on a head with some aspiring children
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 24 Jun 2015 19:42:01 -0700] rev 1448
next: print some message when on a head with some aspiring children Being on a head does not necessary means that this is the end of the road. It is likely that some changesets could be evolve as children. We detect this case and provide a hint.
Wed, 24 Jun 2015 20:23:41 -0700 next: reword error output
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 24 Jun 2015 20:23:41 -0700] rev 1447
next: reword error output We move to a more compact and direct phrasing. I'm not fully happy about it yet, but this is a step forward. The listing of candidate should maybe be moved behind a --verbose flag (and such verbose flag be suggested in the error). G: changed tests/test-prev-next.t
Wed, 24 Jun 2015 20:17:57 -0700 next: refactor the command code
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 24 Jun 2015 20:17:57 -0700] rev 1446
next: refactor the command code We make the conditional flatter and the return more straight forward. This will make addition of more complex cases more straightforward in future changesets.
Wed, 24 Jun 2015 21:16:57 -0700 next: add extensive testing to the 'next' command
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 24 Jun 2015 21:16:57 -0700] rev 1445
next: add extensive testing to the 'next' command We are going to introduce more complexity to it. We add the full extend of the case we want tested to see how they evolve later.
Wed, 24 Jun 2015 19:43:35 -0700 readme: add an entry about the obsolete wdir parent hint
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 24 Jun 2015 19:43:35 -0700] rev 1444
readme: add an entry about the obsolete wdir parent hint
Wed, 24 Jun 2015 16:37:02 -0700 evolve: add a hint when the parent working copy become obsolete
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 24 Jun 2015 16:37:02 -0700] rev 1443
evolve: add a hint when the parent working copy become obsolete This should help people find the right commands to recover from this situation.
Tue, 23 Jun 2015 18:16:21 -0700 evolve: better error message when command is Ambiguous
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 18:16:21 -0700] rev 1442
evolve: better error message when command is Ambiguous Having more data help the user.
Wed, 20 May 2015 16:35:45 -0700 evolve: mechanism to load some commands selectively
Laurent Charignon <lcharignon@fb.com> [Wed, 20 May 2015 16:35:45 -0700] rev 1441
evolve: mechanism to load some commands selectively This patch introduces a new config option: experimental.evolutioncommands to load evolve's command selectively. It is part of a sequence of patches to make evolve's command respect the value of experimental.evolution. Once these commands are ready and actually respect the flag, they are safe to use and can be enabled with the mechanism developed in this patch.
Mon, 22 Jun 2015 17:46:32 -0700 evolve: clarify code in _singlesuccessor
Laurent Charignon <lcharignon@fb.com> [Mon, 22 Jun 2015 17:46:32 -0700] rev 1440
evolve: clarify code in _singlesuccessor Before this patch we were not very explicit with this while condition in _singlesuccessor. This patch makes it more legible.
Tue, 23 Jun 2015 16:50:39 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 16:50:39 -0700] rev 1439
merge with stable
Tue, 23 Jun 2015 16:50:06 -0700 merge with inactive compat branch stable
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 16:50:06 -0700] rev 1438
merge with inactive compat branch
Tue, 23 Jun 2015 16:49:53 -0700 merge with inactive compat branch stable
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 16:49:53 -0700] rev 1437
merge with inactive compat branch
Tue, 23 Jun 2015 16:49:24 -0700 close inactive compatibility branch mercurial-3.0
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 16:49:24 -0700] rev 1436
close inactive compatibility branch
Tue, 23 Jun 2015 16:47:47 -0700 close inactive compatibility branch compat-hg2.3
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 16:47:47 -0700] rev 1435
close inactive compatibility branch
Tue, 23 Jun 2015 16:47:24 -0700 merge with inactive compat branch stable
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 16:47:24 -0700] rev 1434
merge with inactive compat branch
Tue, 23 Jun 2015 16:47:08 -0700 merge with inactive compat branch stable
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 16:47:08 -0700] rev 1433
merge with inactive compat branch
Tue, 23 Jun 2015 16:46:54 -0700 merge with inactive compat branch stable
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 16:46:54 -0700] rev 1432
merge with inactive compat branch
Tue, 23 Jun 2015 16:45:55 -0700 close inactive compatibility branch mercurial-2.7
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 16:45:55 -0700] rev 1431
close inactive compatibility branch
Tue, 23 Jun 2015 16:45:47 -0700 close inactive compatibility branch compat-hg2.4
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 16:45:47 -0700] rev 1430
close inactive compatibility branch
Tue, 23 Jun 2015 16:45:22 -0700 close inactive compatibility branch mercurial-2.2
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 16:45:22 -0700] rev 1429
close inactive compatibility branch
Mon, 22 Jun 2015 12:44:21 -0700 evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com> [Mon, 22 Jun 2015 12:44:21 -0700] rev 1428
evolve: raise MultipleSuccessorsError when computing dependency for split commits We don't know how to handle dependency for split commits yet. When facing a splitted commit, instead of silently adding the first successor to the dependency list and fail later, we do nothing.
Tue, 23 Jun 2015 15:26:51 -0700 next/prev: require --merge to move with uncommitted changes
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 15:26:51 -0700] rev 1427
next/prev: require --merge to move with uncommitted changes This should previous common mistake.
Tue, 23 Jun 2015 15:32:47 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 15:32:47 -0700] rev 1426
merge with stable
Tue, 23 Jun 2015 15:32:15 -0700 Added tag 5.1.5 for changeset 1377f6a7f9ec stable
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 15:32:15 -0700] rev 1425
Added tag 5.1.5 for changeset 1377f6a7f9ec
Tue, 23 Jun 2015 15:30:35 -0700 prepare version 5.1.5 stable 5.1.5
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 15:30:35 -0700] rev 1424
prepare version 5.1.5
Tue, 23 Jun 2015 00:00:03 -0700 evolve: non recursive implementation for _aspiringdescendants
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 00:00:03 -0700] rev 1423
evolve: non recursive implementation for _aspiringdescendants We switch from a N squared recursive implementation for _aspiringdescendants to a more efficient algorithm in O(len(unstable)).
Mon, 22 Jun 2015 21:01:30 -0700 evolve: distinct between '--all' and '--all --any'
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 22 Jun 2015 21:01:30 -0700] rev 1422
evolve: distinct between '--all' and '--all --any' Before this patch, evolve --all implied evolve --all --any. With this patch evolve --all evolves all the aspiring descendants of the parent of the working copy. evolve --all --any does what evolve --all did before: evolving all the troubles in the repo. We add anew function _aspiringdescendant for this purpose
Tue, 23 Jun 2015 00:02:23 -0700 rework refactor _aspiringchildren by introducing _possibledestination
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 23 Jun 2015 00:02:23 -0700] rev 1421
rework refactor _aspiringchildren by introducing _possibledestination This allows us to reuse some of the logic for evolve from _aspiringchildren for the new implementation of evolve --all. The logic is also better as some previously selected changesets may not actually evolve on the target, and some changesets that does not would not.
Mon, 22 Jun 2015 19:24:21 -0700 evolve: consider all potential candidates on bare evolve
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 22 Jun 2015 19:24:21 -0700] rev 1420
evolve: consider all potential candidates on bare evolve Instead of stopping at the first resolution, we returns all matches. If there is ambiguity, we abort. The function itself seems fairly flawed but will do the job in simple case.
Tue, 23 Jun 2015 13:20:00 -0700 evolve: fix an issue in the documentation of the evolve function
Laurent Charignon <lcharignon@fb.com> [Tue, 23 Jun 2015 13:20:00 -0700] rev 1419
evolve: fix an issue in the documentation of the evolve function hg evolve is solving troubles that will become children of the parent of the working copy and its descendant. This last part was omitted by mistake from the help message before.
Mon, 22 Jun 2015 12:41:32 -0700 evolve: fix error in builddependencies
Laurent Charignon <lcharignon@fb.com> [Mon, 22 Jun 2015 12:41:32 -0700] rev 1418
evolve: fix error in builddependencies When MultipleSuccessorsError was raised, we were still running the code below to add the dependency if succ was not None from a previous iteration. This bug was harmless because dependencies and rdependencies are sets but it makes the code clearer this way.
Fri, 19 Jun 2015 18:17:57 -0700 test-evolve-bumped: add new test case for merge
Laurent Charignon <lcharignon@fb.com> [Fri, 19 Jun 2015 18:17:57 -0700] rev 1417
test-evolve-bumped: add new test case for merge Before this patch we were not testing our warning message for bumped changesets that are the product of a merge. This patch adds a test case for that.
Fri, 19 Jun 2015 18:16:31 -0700 test-evolve-bumped: improve tests legibility
Laurent Charignon <lcharignon@fb.com> [Fri, 19 Jun 2015 18:16:31 -0700] rev 1416
test-evolve-bumped: improve tests legibility This patch introduces in test-evolve-bumped some of the test helpers that we use in other tests to make the code more legible.
Mon, 22 Jun 2015 15:04:54 -0700 evolve: drop len comparison in prune and fold
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 22 Jun 2015 15:04:54 -0700] rev 1415
evolve: drop len comparison in prune and fold Computing the length of a smartest may be significantly more expensive than computing it length.
Sat, 20 Jun 2015 02:04:37 -0700 evolve: add an help topic about evolution
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 20 Jun 2015 02:04:37 -0700] rev 1414
evolve: add an help topic about evolution The text is probably bad, but this have been laying around for quite sometime (with Mercurial core in mind) lets move forward and add this to evolve.
Fri, 19 Jun 2015 17:47:48 -0700 evolve: remove _picknexttroubled
Laurent Charignon <lcharignon@fb.com> [Fri, 19 Jun 2015 17:47:48 -0700] rev 1413
evolve: remove _picknexttroubled It was not used anymore
Fri, 19 Jun 2015 17:35:29 -0700 evolve: warn about every skipped evolution
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 19 Jun 2015 17:35:29 -0700] rev 1412
evolve: warn about every skipped evolution When we could not evolve a revision, we used to silently ignore it. We now inform the user that we ignored something and tell him why (with more or less informative message).
Fri, 19 Jun 2015 17:03:40 -0700 evolve: some style fix
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 19 Jun 2015 17:03:40 -0700] rev 1411
evolve: some style fix
Fri, 19 Jun 2015 14:26:33 -0700 evolve: unify revision handling and rework error message
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 19 Jun 2015 14:26:33 -0700] rev 1410
evolve: unify revision handling and rework error message This changesets do a massive refactoring of the way evolve select changesets to be evolve. We now use a two stages approach: 1) read command line argument and produce a list of revision to evolve. 2) evolve all these revisions. This allow a much cleaner, robust and extensible code. In the process the error message issued when there is nothing to evolve have been updated to informs about other troubles in the repository and point at useful option to solve them. The 'update' case is handled independently at the start of the function.
Fri, 19 Jun 2015 14:32:54 -0700 evolve: move the 'update' if '.' is obsolete earlier
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 19 Jun 2015 14:32:54 -0700] rev 1409
evolve: move the 'update' if '.' is obsolete earlier A big refactoring of the computation of the revision to evolve is coming. This case won't be handled by it, so we extract it earlier.
Tue, 16 Jun 2015 17:56:23 -0700 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com> [Tue, 16 Jun 2015 17:56:23 -0700] rev 1408
evolve: skip unstable changesets with multiple successorssets We were previously crashing when encountering them, but we want to be able to solve the other solvable troubles instead of stopping right there.
Fri, 19 Jun 2015 14:18:45 -0700 evolve: allow multiple --rev argument
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 19 Jun 2015 14:18:45 -0700] rev 1407
evolve: allow multiple --rev argument This is standard behavior for Mercurial commands.
Fri, 19 Jun 2015 16:49:59 -0700 test-evolve: fix tests failing on some platform
Laurent Charignon <lcharignon@fb.com> [Fri, 19 Jun 2015 16:49:59 -0700] rev 1406
test-evolve: fix tests failing on some platform We change from echo to printf to print newlines so that evolve's tests work cross-platforms.
Tue, 16 Jun 2015 16:58:38 -0700 evolve: prevent using --rev and --any together
Laurent Charignon <lcharignon@fb.com> [Tue, 16 Jun 2015 16:58:38 -0700] rev 1405
evolve: prevent using --rev and --any together Before this patch it was possible to use evolve --rev --any and it meant evolve --rev. This patch throws an error when using evolve --rev --any.
Tue, 16 Jun 2015 15:14:37 -0700 evolve: add selector for trouble types
Laurent Charignon <lcharignon@fb.com> [Tue, 16 Jun 2015 15:14:37 -0700] rev 1404
evolve: add selector for trouble types This patch adds command line flags to select the kind of troubles to solve. Before this patch evolve was solving any kind of troubled. With this patch evolve --all and evolve --rev can be configured to only solve only some type of troubles (divergent, bumped or unstable). To give this choice to the user we add three new command line flags to the evolve command: --bumped, --divergent and --unstable.
Fri, 19 Jun 2015 13:57:16 -0700 evolve: refresh the documentation
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 19 Jun 2015 13:57:16 -0700] rev 1403
evolve: refresh the documentation Multiple behavior change are coming, a perfect timing to refresh the doc before we rework it more.
Tue, 16 Jun 2015 15:08:44 -0700 evolve: check for uncommited change earlier
Laurent Charignon <lcharignon@fb.com> [Tue, 16 Jun 2015 15:08:44 -0700] rev 1402
evolve: check for uncommited change earlier Before this patch we were checking for uncommited change multiple times and quite late for uncommited change. This patch moves the check at the beginning of the evolve method to avoid these shortcomings.
Fri, 19 Jun 2015 12:39:15 -0700 merge with some old heads stable
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 19 Jun 2015 12:39:15 -0700] rev 1401
merge with some old heads
Mon, 16 Jun 2014 14:31:49 -0700 merge with some older backport stable
Pierre-Yves David <pyd@fb.com> [Mon, 16 Jun 2014 14:31:49 -0700] rev 1400
merge with some older backport
Thu, 12 Jun 2014 16:10:01 -0700 template: add a troubles keyword stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 12 Jun 2014 16:10:01 -0700] rev 1399
template: add a troubles keyword This keyword list all evolution troubles that affect a changeset. Evolution troubles can be "unstable", "divergent" and "bumped".
Fri, 19 Jun 2015 11:04:18 -0700 evolve: make fold aware of allowunstable
Laurent Charignon <lcharignon@fb.com> [Fri, 19 Jun 2015 11:04:18 -0700] rev 1398
evolve: make fold aware of allowunstable Before this patch, the fold command was performing the same way regardless of the value of experimental.evolution. With this patch if the configuration does not allow unstability, fold won't create instability.
Fri, 19 Jun 2015 11:03:51 -0700 evolve: make prune respect allowunsable
Laurent Charignon <lcharignon@fb.com> [Fri, 19 Jun 2015 11:03:51 -0700] rev 1397
evolve: make prune respect allowunsable Before this patch, the prune command was performing the same way regardless of the value of experimental.evolution. With this patch if the configuration does not allow unstability, prune won't create instability.
Fri, 19 Jun 2015 10:47:02 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 19 Jun 2015 10:47:02 -0700] rev 1396
merge with stable
Fri, 19 Jun 2015 10:44:25 -0700 evolve: add a hint about how to abort an evolve with conflict stable
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 19 Jun 2015 10:44:25 -0700] rev 1395
evolve: add a hint about how to abort an evolve with conflict The whole evolve --continue is hacky, but the way to abort it have been arcane knowledge, carried from sith lord to its apprentice for centuries. We add a hint to help the use discover it. One day a clean solution will come.
Fri, 19 Jun 2015 00:17:34 -0700 merge with branch closing commit stable
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 19 Jun 2015 00:17:34 -0700] rev 1394
merge with branch closing commit
Fri, 19 Jun 2015 00:16:56 -0700 close 3.1 compat branch mercurial-3.1
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 19 Jun 2015 00:16:56 -0700] rev 1393
close 3.1 compat branch
Fri, 19 Jun 2015 00:15:55 -0700 evolve: marks the extension as tested with 4.1 stable
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 19 Jun 2015 00:15:55 -0700] rev 1392
evolve: marks the extension as tested with 4.1 Because it is.
Thu, 18 Jun 2015 23:45:37 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 23:45:37 -0700] rev 1391
merge with stable
Thu, 18 Jun 2015 18:05:57 -0700 evolve: fix default value for --confirm stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 18:05:57 -0700] rev 1390
evolve: fix default value for --confirm Before this changes, the default was yes, unlike advertised. The test were actually catching that so I go them updated.
Thu, 18 Jun 2015 18:12:24 -0700 prune: use the bookmark wrapper for 3.4 compatibility stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 18:12:24 -0700] rev 1389
prune: use the bookmark wrapper for 3.4 compatibility
Thu, 18 Jun 2015 17:57:11 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 17:57:11 -0700] rev 1388
merge with stable
Thu, 18 Jun 2015 17:56:02 -0700 evolve: update readme regarding the preview perf improvement stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 17:56:02 -0700] rev 1387
evolve: update readme regarding the preview perf improvement
Thu, 18 Jun 2015 16:15:28 -0700 evolve: move 'allsuccessors()' to smarted usage stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 16:15:28 -0700] rev 1386
evolve: move 'allsuccessors()' to smarted usage The "new" smarted can be significantly more efficient than the old was. We convert our revset to take advantage of that.
Thu, 18 Jun 2015 16:15:21 -0700 evolve: move 'successors()' to smarted usage stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 16:15:21 -0700] rev 1385
evolve: move 'successors()' to smarted usage The "new" smarted can be significantly more efficient than the old was. We convert our revset to take advantage of that.
Thu, 18 Jun 2015 16:15:13 -0700 evolve: move 'allprecursors()' to smarted usage stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 16:15:13 -0700] rev 1384
evolve: move 'allprecursors()' to smarted usage The "new" smarted can be significantly more efficient than the old was. We convert our revset to take advantage of that.
Thu, 18 Jun 2015 16:15:00 -0700 evolve: move 'precursors()' to smarted usage stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 16:15:00 -0700] rev 1383
evolve: move 'precursors()' to smarted usage The "new" smarted can be significantly more efficient than the old was. We convert our revset to take advantage of that.
Thu, 18 Jun 2015 17:08:38 -0700 evolve: move 'suspended()' to smarted usage stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 17:08:38 -0700] rev 1382
evolve: move 'suspended()' to smarted usage The "new" smarted can be significantly more efficient than the old was. We convert our revset to take advantage of that.
Thu, 18 Jun 2015 17:08:11 -0700 evolve: move 'troubled()' to smarted usage stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 17:08:11 -0700] rev 1381
evolve: move 'troubled()' to smarted usage The "new" smarted can be significantly more efficient than the old was. We convert our revset to take advantage of that.
Thu, 18 Jun 2015 16:14:32 -0700 evolve: avoid creating changectx object in _allsuccessors stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 16:14:32 -0700] rev 1380
evolve: avoid creating changectx object in _allsuccessors The repo lookups and object creations have a significant performance overhead.
Thu, 18 Jun 2015 16:14:16 -0700 evolve: avoid creating changectx object in _successors stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 16:14:16 -0700] rev 1379
evolve: avoid creating changectx object in _successors The repo lookups and object creations have a significant performance overhead.
Thu, 18 Jun 2015 16:13:35 -0700 evolve: avoid creating changectx object in _allprecursors stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 16:13:35 -0700] rev 1378
evolve: avoid creating changectx object in _allprecursors The repo lookups and object creations have a significant performance overhead.
Thu, 18 Jun 2015 16:13:15 -0700 evolve: avoid creating changectx object in _precursors stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 16:13:15 -0700] rev 1377
evolve: avoid creating changectx object in _precursors The repo lookups and object creations have a significant performance overhead.
Thu, 18 Jun 2015 16:18:29 -0700 evolve: fix the template keyworkd decorator docstring stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 16:18:29 -0700] rev 1376
evolve: fix the template keyworkd decorator docstring It was still talking about revsets.
Thu, 18 Jun 2015 15:56:56 -0700 evolve: search divergence within all precursors stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 15:56:56 -0700] rev 1375
evolve: search divergence within all precursors Before this patches we looking for divergence base in immediate successors only. This was a bug leading the divergence base to be reported missing more than it should.
Thu, 18 Jun 2015 15:25:51 -0700 evolve: make sure we use an unfiltered repo when looking for divergence data stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 15:25:51 -0700] rev 1374
evolve: make sure we use an unfiltered repo when looking for divergence data Let's be double sure
Thu, 18 Jun 2015 15:25:51 -0700 evolve: make sure we use an unfiltered repo when looking for divergence data
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 18 Jun 2015 15:25:51 -0700] rev 1373
evolve: make sure we use an unfiltered repo when looking for divergence data Let's be double sure
Wed, 17 Jun 2015 11:31:05 -0700 directaccess: remove import from the no warning list
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 17 Jun 2015 11:31:05 -0700] rev 1372
directaccess: remove import from the no warning list removal of the list previously failed for some reason.
Wed, 17 Jun 2015 10:30:07 -0700 directaccess: add some commands to the directaccess list
Laurent Charignon <lcharignon@fb.com> [Wed, 17 Jun 2015 10:30:07 -0700] rev 1371
directaccess: add some commands to the directaccess list Before this patch we had a limited list of commands in the directaccess list. This patch adds about 20 commands to that list: - all the read-only commands in core supporting a rev as an argument - 'outgoing': since people can use 'outgoing' to know what is going to be pushed, the output of hg outgoing should be consistent with to the output of hg push and must therefore disallow directaccess since hg push forbids it.
Tue, 16 Jun 2015 14:49:28 -0700 evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com> [Tue, 16 Jun 2015 14:49:28 -0700] rev 1370
evolve: move test for evolve --rev ordering in a separate file evolve --rev reordering is a complicated enough topic to justify a separate test.
Tue, 16 Jun 2015 14:30:43 -0700 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com> [Tue, 16 Jun 2015 14:30:43 -0700] rev 1369
evolve: properly evolve stacked unstable with --rev Before this patch, _singlesuccessor was not returning a revision number for the case where the parent of the argument was not obsolete. This resulted in bug when testing membership with the set of revisions. This patch fixes it and adds a test.
Tue, 16 Jun 2015 10:19:17 -0700 directaccess: disable directaccess for push and serve
Laurent Charignon <lcharignon@fb.com> [Tue, 16 Jun 2015 10:19:17 -0700] rev 1368
directaccess: disable directaccess for push and serve Before this patch, push and serve were subject to directaccess. This patch makes them throw error when trying to access hidden hashes.
Tue, 16 Jun 2015 10:08:48 -0700 directaccess: change rule from opt-in to opt-out
Laurent Charignon <lcharignon@fb.com> [Tue, 16 Jun 2015 10:08:48 -0700] rev 1367
directaccess: change rule from opt-in to opt-out Before this patch we would opt-in commands for direct access and the default filter for new repository was 'visible'. With this patch, the default filter for new repos is 'visible-directaccess-warn'. It means that by default all the commands have directaccess with warnings.
Tue, 16 Jun 2015 10:07:51 -0700 inhibit: move transaction wrapping outside of repo setup
Laurent Charignon <lcharignon@fb.com> [Tue, 16 Jun 2015 10:07:51 -0700] rev 1366
inhibit: move transaction wrapping outside of repo setup Before this patch, transaction wrapping code was done in reposetup. It happened to cause stackoverflows in repos with a lot of subreps. This patch moves the wrapping to extsetup and avoids this problem.
Mon, 15 Jun 2015 17:44:12 -0700 tests: ignores other core output in capability testing
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 15 Jun 2015 17:44:12 -0700] rev 1365
tests: ignores other core output in capability testing This will avoid breaking the test anytime core changes.
Wed, 20 May 2015 12:46:13 -0700 evolve: make uncommit respect allowunsable
Laurent Charignon <lcharignon@fb.com> [Wed, 20 May 2015 12:46:13 -0700] rev 1364
evolve: make uncommit respect allowunsable Before this patch, the uncommit command was performing the same way regardless of the value of experimental.evolution. With this patch if the configuration does not allow unstability, uncommit won't create instability.
Sat, 13 Jun 2015 11:14:07 -0700 directaccess: use cached filteredrevs
Laurent Charignon <lcharignon@fb.com> [Sat, 13 Jun 2015 11:14:07 -0700] rev 1363
directaccess: use cached filteredrevs Before this patch we were calling directly repoview.computehidden(repo) to compute the revisions visible with direct access, without going through the caching mechanism for the filtered revisions. There was two issues with that: (1) Performance: We were not leverating the cached values of the 'visible' revs (2) Stability: If there were to be a cache inconsistency with the computation of 'visible' we would crash in the branchmap consistency check partial.validfor. Consider the scenario of rebase with bookmarks: - when we delete a bookmark on an obsolete changeset (like what rebase does when moving the bookmark after rebasing the changesets) - then this changes the value returned by repoview.computehidden(repo) as bookmarks are used as dynamic blockers in repoview.computehidden(repo) - as of now, we don't invalidate the cache in the case of bookmark change - if we have a cached value from before the bookmark change, repoview.filterrevs(repo, 'visible') considers the cached value correct and returns something different than repoview.computehidden(repo) - in turn, if we use repoview.computehidden(repo) in directaccess, the subset relationship is broken and the cache consistency assertion (parial.validfor) fails if branchmap.updatecache is called in this time window This patch leverages the caching infrastructure in place to speed up the computation of the filteredrevs for visible-directaccess-nowarn and visible-directaccess-warn. Incidentally it prevents the bug discussed in (2) from crashing when running a rebase with a bookmark. Note that there still needs to be a fix in core for the case discussed in (2). The test for this side of the fix (not core's fix for (2) is very hard to implement without introducing a lot of dependencies and does not belong here. It is much easier to have the test of the fix for the scenario (2) in core along with the fix.
Sat, 13 Jun 2015 11:14:27 -0700 inhibit: improve performance of transaction wrapping
Laurent Charignon <lcharignon@fb.com> [Sat, 13 Jun 2015 11:14:27 -0700] rev 1362
inhibit: improve performance of transaction wrapping Before this patch, transaction wrapping was the most expensive part of inhibit computation wise. This patch changes the revset that we use in the transaction wrapping to make it ~50x faster to compute: revset #0: obsolete() - hidden() 0) wall 0.000214 comb 0.000000 user 0.000000 sys 0.000000 (best of 11209) vs revset #0: (not hidden()) and obsolete() 0) wall 0.010965 comb 0.010000 user 0.010000 sys 0.000000 (best of 237)
Thu, 04 Jun 2015 16:49:16 -0700 evolve: extract the code computing dependencies in a separate function
Laurent Charignon <lcharignon@fb.com> [Thu, 04 Jun 2015 16:49:16 -0700] rev 1361
evolve: extract the code computing dependencies in a separate function The code to compute dependencies between unstable changeset can be reused to compute the next reveset. This patch extracts it in its own function to make it reusable.
Thu, 04 Jun 2015 10:01:02 -0700 directaccess: add mechanism to load directaccess after some other extensions
Laurent Charignon <lcharignon@fb.com> [Thu, 04 Jun 2015 10:01:02 -0700] rev 1360
directaccess: add mechanism to load directaccess after some other extensions directaccess needs to load after some extensions to avoid interfering with them. This patch adds a mechanism to specify what extension directaccess needs to load after.
Tue, 02 Jun 2015 15:24:12 -0700 evolve: add another test for evolve --rev
Laurent Charignon <lcharignon@fb.com> [Tue, 02 Jun 2015 15:24:12 -0700] rev 1359
evolve: add another test for evolve --rev This patch adds one test for three conditions not covered before: - evolve --rev on a stack with obsolete commits without successors - evolve --rev on two sets of stacks in parallel - evolve --rev on a set of stack partially solvable (because all of the commits of the stack are not specified with --rev)
Tue, 02 Jun 2015 15:23:50 -0700 evolve: add a more complex test for evolve --rev
Laurent Charignon <lcharignon@fb.com> [Tue, 02 Jun 2015 15:23:50 -0700] rev 1358
evolve: add a more complex test for evolve --rev The previous tests of evolve --rev would have passed with an ordering of revs by increasing revision numbers. This patch adds a test that would fail if that was what we were doing and therefore tests the implementation better.
Thu, 04 Jun 2015 13:35:12 -0700 evolve: add ordering of the revisions for evolve --rev
Laurent Charignon <lcharignon@fb.com> [Thu, 04 Jun 2015 13:35:12 -0700] rev 1357
evolve: add ordering of the revisions for evolve --rev When running evolve --rev we want to process the revisions in an optimal fashion to solve the maximum amount of trouble in the minimum number of steps. This patch adds a step to evolve --rev to order the revision before solving the troubles. A simple test is added to cover a basic case.
Thu, 04 Jun 2015 13:26:58 -0700 test: adapt to change in mercurial core
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 04 Jun 2015 13:26:58 -0700] rev 1356
test: adapt to change in mercurial core Bundle2 is one by default and more capability have been added.
Wed, 03 Jun 2015 16:01:28 -0700 evolve: add directaccess to the setup.py
Laurent Charignon <lcharignon@fb.com> [Wed, 03 Jun 2015 16:01:28 -0700] rev 1355
evolve: add directaccess to the setup.py directaccess was missing from the list so that when we were building evolve it was not contained in the build.
Mon, 01 Jun 2015 12:29:12 -0700 evolve: don't crash on singled out revisions
Laurent Charignon <lcharignon@fb.com> [Mon, 01 Jun 2015 12:29:12 -0700] rev 1354
evolve: don't crash on singled out revisions Before this patch, we were crashing on unsolvable revisions when using evolve --rev. This patch removes the crash and prints a warning when we encounter such revision.
Mon, 01 Jun 2015 10:58:50 -0700 test: adapt test to less frequent branch warning
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 01 Jun 2015 10:58:50 -0700] rev 1353
test: adapt test to less frequent branch warning The 701df761aa94 changeset in mercurial core made the branch warning issue only for the first branch created. We adapt the tests to reflect this change.
Mon, 01 Jun 2015 10:56:49 -0700 tests: adapt summary output to 6084926366b9
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 01 Jun 2015 10:56:49 -0700] rev 1352
tests: adapt summary output to 6084926366b9 The 'summary' commands recently gained phases related output, 6084926366b9 put it into a "final" state. We adapt the test to this new style.
Wed, 27 May 2015 10:23:37 -0700 evolve: small refactoring of the uncommit function
Laurent Charignon <lcharignon@fb.com> [Wed, 27 May 2015 10:23:37 -0700] rev 1351
evolve: small refactoring of the uncommit function We introduce a new variable to simplify the implementation of hg uncommit --interactive.
Wed, 13 May 2015 09:46:34 -0700 evolve: improve error message
Laurent Charignon <lcharignon@fb.com> [Wed, 13 May 2015 09:46:34 -0700] rev 1350
evolve: improve error message We add a new line and change the wording from 'revsets' to 'revisions'.
Wed, 13 May 2015 09:43:36 -0700 evolve: move return statement at the right level
Laurent Charignon <lcharignon@fb.com> [Wed, 13 May 2015 09:43:36 -0700] rev 1349
evolve: move return statement at the right level When no trouble was found with the --rev option, the code of the evolve function would continue running and would solve unwanted troubles. This patch makes sure it does not happen.
Wed, 27 May 2015 14:00:01 -0700 evolve: remove extra whitespace
Laurent Charignon <lcharignon@fb.com> [Wed, 27 May 2015 14:00:01 -0700] rev 1348
evolve: remove extra whitespace This patch removes a whitespace at the end of a line.
Fri, 22 May 2015 10:38:16 -0700 directaccess: don't crash when evolve is not loaded
Laurent Charignon <lcharignon@fb.com> [Fri, 22 May 2015 10:38:16 -0700] rev 1347
directaccess: don't crash when evolve is not loaded Before this patch, when evolve was not loaded direct access was crashing. This patch catches the error and prevents the crash.
Wed, 20 May 2015 10:58:32 -0700 inhbit: don't crash on commit with no changes
Laurent Charignon <lcharignon@fb.com> [Wed, 20 May 2015 10:58:32 -0700] rev 1346
inhbit: don't crash on commit with no changes Before this patch inhibit would crash when running hg amend with no changes. This patch fixes this case and adds a test to prevent regression.
Wed, 20 May 2015 13:32:32 -0700 evolve: add a test for prune --keep -r . with active bookmark
Laurent Charignon <lcharignon@fb.com> [Wed, 20 May 2015 13:32:32 -0700] rev 1345
evolve: add a test for prune --keep -r . with active bookmark We recently changed the behavior of prune to make sure that the active bookmark stays active after prune -r . This patch adds a test for the case of prune --keep -r . that does not take the same code path.
Wed, 20 May 2015 13:23:20 -0700 Merge with stable
Laurent Charignon <lcharignon@fb.com> [Wed, 20 May 2015 13:23:20 -0700] rev 1344
Merge with stable
Thu, 14 May 2015 11:32:04 -0700 inhibit: add test to ensure that --hidden is working with inhibit
Laurent Charignon <lcharignon@fb.com> [Thu, 14 May 2015 11:32:04 -0700] rev 1343
inhibit: add test to ensure that --hidden is working with inhibit There was a concern with the transaction hook in inhibit and its potentially devastating effect when used with --hidden. The transaction hook in inhibit hides all the visible & obsolete commits when the transaction ends using the visible() and the obsolete() revset. --hidden does not change the visible() revset so it is fine. If this changes in the future and --hidden actually ends up impacting the visible() revset, this test will catch it and prevent inhibit from putting inhibition markers on all of the obsolete changesets.
Mon, 18 May 2015 17:24:38 -0700 prune: with active bookmark should stay active stable
Laurent Charignon <lcharignon@fb.com> [Mon, 18 May 2015 17:24:38 -0700] rev 1342
prune: with active bookmark should stay active hg prune with an active bookmark was deactivating the bookmark after the prune. This patch makes sure that if a bookmark was active before a "prune" operation (except prune -B) then the bookmark stays activate afterwards.
Tue, 19 May 2015 00:47:00 -0500 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 19 May 2015 00:47:00 -0500] rev 1341
merge with stable
Mon, 18 May 2015 13:58:57 -0400 evolve: migrate off of now-dead util.any stable
Augie Fackler <raf@durin42.com> [Mon, 18 May 2015 13:58:57 -0400] rev 1340
evolve: migrate off of now-dead util.any
Thu, 14 May 2015 11:23:40 -0700 inhibit: create direct access extension
Laurent Charignon <lcharignon@fb.com> [Thu, 14 May 2015 11:23:40 -0700] rev 1339
inhibit: create direct access extension Since we want to use direct access without necessarily using inhibit, this patch separates both extensions. Inhibit depends on direct access and we add a test to check that it complains if that is not the case.
Thu, 14 May 2015 15:59:06 -0700 inhibit: handle inhibit marker on stripped revision
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 14 May 2015 15:59:06 -0700] rev 1338
inhibit: handle inhibit marker on stripped revision If a revision disappear from the repo, we should not crash.
Wed, 13 May 2015 17:25:15 -0700 update README stable
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 13 May 2015 17:25:15 -0700] rev 1337
update README
Wed, 13 May 2015 09:03:11 -0700 evolve: don't use python sets on top of revset for evolve --rev
Laurent Charignon <lcharignon@fb.com> [Wed, 13 May 2015 09:03:11 -0700] rev 1336
evolve: don't use python sets on top of revset for evolve --rev In --rev we were wrapping the revsets in python sets. This is wrong as the use python sets force the wrapper revision set to be computed earlier than it has to and have no order guarantee. Removing this wrapping changes a test because the ordering does not appear to be the same but the end result is the same.
Wed, 13 May 2015 08:47:27 -0700 evolve: current bookmark wrongly moving during prune (issue4559) stable
Laurent Charignon <lcharignon@fb.com> [Wed, 13 May 2015 08:47:27 -0700] rev 1335
evolve: current bookmark wrongly moving during prune (issue4559) Before this patch: prune -r <otherbookmark> also moved the current bookmark eventhough it was not related to the pruned changes. This patch fixes it and adds a test to catch regressions.
Tue, 12 May 2015 13:52:29 -0700 inhibit: direct access with and without warning on a per command basis
Laurent Charignon <lcharignon@fb.com> [Tue, 12 May 2015 13:52:29 -0700] rev 1334
inhibit: direct access with and without warning on a per command basis We introduce a new filtername visibile-directaccess-nowarn to enable direct access with no warning on a per command basis. The motivation behing this change is to display warning when attempting direct access in destructive commands.
Tue, 12 May 2015 12:26:46 -0700 inhbit: make tests work with evolution.createmarkers config
Laurent Charignon <lcharignon@fb.com> [Tue, 12 May 2015 12:26:46 -0700] rev 1333
inhbit: make tests work with evolution.createmarkers config Before this patch, the test for inhibit was assuming evolve fully running. For most of the features that inhbit enables, createmarkers is sufficient. This patch makes the test of inhibit run with the createmarkers config and only lifts it for operations in the middle of the stack.
Thu, 30 Apr 2015 17:37:11 -0700 inhibit: config to enable only direct access
Laurent Charignon <lcharignon@fb.com> [Thu, 30 Apr 2015 17:37:11 -0700] rev 1332
inhibit: config to enable only direct access Inhibit provides several features to hide instability and direct access. We want to use direct access in evolve without hiding the instability. This patch adds a config flag to enable only direct access in inhibit, when this config flag is not set or set to false we enable all the features of inhibit that don't concern direct access.
Mon, 11 May 2015 14:31:17 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 11 May 2015 14:31:17 -0700] rev 1331
merge with stable
Thu, 07 May 2015 13:20:11 -0700 bookmarks: update to use new bookmarks api via compatibility layer stable
Ryan McElroy <rmcelroy@fb.com> [Thu, 07 May 2015 13:20:11 -0700] rev 1330
bookmarks: update to use new bookmarks api via compatibility layer Tested against 3.4 and latest hg + upcoming bookmarks patches
Thu, 07 May 2015 10:54:37 -0700 simple4server: remove buggy wrapping of pull related function stable
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 07 May 2015 10:54:37 -0700] rev 1329
simple4server: remove buggy wrapping of pull related function Not only the wrapping was all buggy, but simple4server is not supposed to affect client side pull.
Wed, 06 May 2015 11:29:15 -0700 simple4server: update bugtracker link stable
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 06 May 2015 11:29:15 -0700] rev 1328
simple4server: update bugtracker link We moved all evolution related bug to the core Mercurial tracker.
Tue, 05 May 2015 14:09:09 -0700 evolve: rename handlenotrouble to _handlenotrouble and add doc
Laurent Charignon <lcharignon@fb.com> [Tue, 05 May 2015 14:09:09 -0700] rev 1327
evolve: rename handlenotrouble to _handlenotrouble and add doc As suggested by Pierre-Yves on his comments on f113636997660b807c36cf1d0a06b76d53ada1a4 we make it clear that this function is private and explain what it does.
Tue, 05 May 2015 18:20:40 -0700 evolve: improve the help message of --rev
Laurent Charignon <lcharignon@fb.com> [Tue, 05 May 2015 18:20:40 -0700] rev 1326
evolve: improve the help message of --rev User's are not exposed to the notion of revset, this patch makes the help message more intelligible.
Tue, 05 May 2015 14:25:59 -0700 evolve: add --rev option to the evolve command
Laurent Charignon <lcharignon@fb.com> [Tue, 05 May 2015 14:25:59 -0700] rev 1325
evolve: add --rev option to the evolve command This patch is part of a series of patches to refactor the evolve method and make it more readable. We introduce a new --rev flag to specify a revset where to solve the troubles instead of looking from the parent changeset. All add a test checks that --rev works with several commits
Tue, 05 May 2015 14:25:35 -0700 evolve: extract cleanup logic in the evolve function
Laurent Charignon <lcharignon@fb.com> [Tue, 05 May 2015 14:25:35 -0700] rev 1324
evolve: extract cleanup logic in the evolve function We are going to need to reuse the cleanup logic when introducing --rev, so we extract it in a method to avoid code duplication.
Thu, 30 Apr 2015 14:25:37 -0700 evolve: simplify the evolve function
Laurent Charignon <lcharignon@fb.com> [Thu, 30 Apr 2015 14:25:37 -0700] rev 1323
evolve: simplify the evolve function We compute the troubles once and use it in two places instead of recomputing them just to count them.
Tue, 05 May 2015 17:15:06 -0700 evolve: optimize the computation of the troubled() revset
Laurent Charignon <lcharignon@fb.com> [Tue, 05 May 2015 17:15:06 -0700] rev 1322
evolve: optimize the computation of the troubled() revset We take the implementation from _counttroubles() and rely on the more efficient & operation for revset instead of laying down the entire set with %ld.
Tue, 05 May 2015 13:32:01 -0700 inhibit: don't inhibit pinned commits during rebase
Durham Goode <durham@fb.com> [Tue, 05 May 2015 13:32:01 -0700] rev 1321
inhibit: don't inhibit pinned commits during rebase During a rebase we pin certain commits to always be visible. This caused the inhibit extension to inhibit them when a transaction closed. Let's make inhibit aware of such pins and not obsolete them.
Mon, 04 May 2015 16:56:46 -0700 evolve: extract the logic to solve one change into a method
Laurent Charignon <lcharignon@fb.com> [Mon, 04 May 2015 16:56:46 -0700] rev 1320
evolve: extract the logic to solve one change into a method The goal is to later reuse this method to implement the --rev flag for evolve that solves the troubles in a revset.
Mon, 04 May 2015 16:56:05 -0700 evolve: add new variable and comment
Laurent Charignon <lcharignon@fb.com> [Mon, 04 May 2015 16:56:05 -0700] rev 1319
evolve: add new variable and comment Add comment and introduce a new variable to keep track of if the progress ui is shown. Later on we will use this variable in the implementation of the --rev option.
Mon, 04 May 2015 16:09:05 -0700 evolve: move code to track progress and start node
Laurent Charignon <lcharignon@fb.com> [Mon, 04 May 2015 16:09:05 -0700] rev 1318
evolve: move code to track progress and start node This makes it easier to refactor the evolve function in this serie of patches.
Thu, 30 Apr 2015 14:00:07 -0700 evolve: renaming of a variable
Laurent Charignon <lcharignon@fb.com> [Thu, 30 Apr 2015 14:00:07 -0700] rev 1317
evolve: renaming of a variable tro was not a really descriptive name, replacing it with nexttrouble.
Mon, 04 May 2015 16:01:45 -0700 evolve: refactoring of the code displaying error when no trouble found
Laurent Charignon <lcharignon@fb.com> [Mon, 04 May 2015 16:01:45 -0700] rev 1316
evolve: refactoring of the code displaying error when no trouble found Before this patch, we had many return statements in the evolve function especially in the part in charge of displaying errors when no troubles were found. We move this code in a separate function.
Thu, 30 Apr 2015 15:11:00 -0700 evolve: refactor code computing stats of obsolescence markers
Laurent Charignon <lcharignon@fb.com> [Thu, 30 Apr 2015 15:11:00 -0700] rev 1315
evolve: refactor code computing stats of obsolescence markers Duplicated code removal by extracting a function.
Thu, 30 Apr 2015 14:55:04 -0700 evolve: refactoring of code related to pushing obs markers
Laurent Charignon <lcharignon@fb.com> [Thu, 30 Apr 2015 14:55:04 -0700] rev 1314
evolve: refactoring of code related to pushing obs markers This removes duplicated code for the pushobsmarkers logic
Mon, 04 May 2015 10:56:06 -0700 merge with stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 04 May 2015 10:56:06 -0700] rev 1313
merge with stable bunch of cleanup on stable
Mon, 04 May 2015 10:58:14 -0700 update readme stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 04 May 2015 10:58:14 -0700] rev 1312
update readme
Mon, 04 May 2015 10:47:02 -0700 evolve: update cmddebugrecordpruneparents to the new markers creation API stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 04 May 2015 10:47:02 -0700] rev 1311
evolve: update cmddebugrecordpruneparents to the new markers creation API The parents information are now first class citizen. (caught by laurent using pylint)
Mon, 04 May 2015 10:46:06 -0700 evolve: drop useless return stable
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 04 May 2015 10:46:06 -0700] rev 1310
evolve: drop useless return This return statement is never reached. This a actually a good new because its variable was undefined. We remove it. (caught by laurent using pylint)
Thu, 30 Apr 2015 14:34:05 -0700 evolve: add missing import stable
Laurent Charignon <lcharignon@fb.com> [Thu, 30 Apr 2015 14:34:05 -0700] rev 1309
evolve: add missing import (caught by pylint)
Thu, 30 Apr 2015 14:47:01 -0700 evolve: improve transaction related code to use the lock module stable
Laurent Charignon <lcharignon@fb.com> [Thu, 30 Apr 2015 14:47:01 -0700] rev 1308
evolve: improve transaction related code to use the lock module Refactored some of the places where we are using locking in evolve to use the lock module and write less code. This should also fix a couple of bug where tr could be None at release time.
Thu, 30 Apr 2015 14:40:36 -0700 evolve: remove unused variables stable
Laurent Charignon <lcharignon@fb.com> [Thu, 30 Apr 2015 14:40:36 -0700] rev 1307
evolve: remove unused variables As suggested by pyflakes, remove 5 unused variables in the evolve module.
(0) -1000 -960 +960 +1000 +3000 tip