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