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).
(0) -1000 -256 +256 +1000 +3000 tip