Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 09 Jun 2017 00:31:00 +0100] rev 2590
obsfate: prepare fatelog tests
Prepare obsfate venue by adding new blank output, it will helps clarify which
are the new output due to obsfate or not.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 09 Jun 2017 00:10:27 +0100] rev 2589
obsfate: build more advanced markers for tests
Prepare obsfate venue by building more advanced markers by varying obs markers
users and dates.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 15 Jun 2017 17:18:25 +0200] rev 2588
readme: fix entry for 6.4.0
some data were missing and some were in the wrong spot
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 15 Jun 2017 16:29:51 +0200] rev 2587
test: drop now useless config about effect flag
The experiment is on by default now.
Boris Feld <boris.feld@octobus.net> [Wed, 14 Jun 2017 15:59:20 +0200] rev 2586
effectflag: activate effect flag by default
Remove forcing effect-flag in test files
Boris Feld <boris.feld@octobus.net> [Fri, 02 Jun 2017 19:08:50 +0200] rev 2585
effectflag: activate effect flag on test-evolve-obshistory test file
Prepare activation of effect flag by default by activating it on test-evolve-
obshistory.t test file first.
Boris Feld <boris.feld@octobus.net> [Sun, 04 Jun 2017 21:43:17 +0200] rev 2584
effectflag: activate effect flag on test-wireproto.t test file
Prepare activation of effect flag by default by activating it on test-
wireproto.t test file first.
Boris Feld <boris.feld@octobus.net> [Sun, 04 Jun 2017 21:35:17 +0200] rev 2583
effectflag: activate effect flag on test-uncommit.t test file
Prepare activation of effect flag by default by activating it on test-
uncommit.t test file first.
Boris Feld <boris.feld@octobus.net> [Sun, 04 Jun 2017 21:32:33 +0200] rev 2582
effectflag: activate effect flag on test-stabilize-order.t test file
Prepare activation of effect flag by default by activating it on test-
stabilize-order.t test file first.
Boris Feld <boris.feld@octobus.net> [Sun, 04 Jun 2017 21:30:08 +0200] rev 2581
effectflag: activate effect flag on test-obsconvert.t test file
Prepare activation of effect flag by default by activating it on test-
obsconvert.t test file first.
Boris Feld <boris.feld@octobus.net> [Wed, 14 Jun 2017 16:01:56 +0200] rev 2580
effectflag: activate effect flag for obsmarkers-case-*.t test files
Prepare activation of effect flag by default by activating it on test-
exchange-obsmarkers-case-*.t test file first.
Boris Feld <boris.feld@octobus.net> [Sun, 04 Jun 2017 20:53:36 +0200] rev 2579
effectflag: activate effect flag on test-drop.t test file
Prepare activation of effect flag by default by activating it on test-drop.t
test file first.
Boris Feld <boris.feld@octobus.net> [Sun, 04 Jun 2017 20:51:50 +0200] rev 2578
effectflag: activate effect flag on test-amend.t test file
Prepare activation of effect flag by default by activating it on test- amend.t
test file first.
Boris Feld <boris.feld@octobus.net> [Sun, 04 Jun 2017 20:47:04 +0200] rev 2577
effectflag: activate effect flag on test-stabilize-result.t test file
Prepare activation of effect flag by default by activating it on test-
stabilize-result.t test file first.
Boris Feld <boris.feld@octobus.net> [Sun, 04 Jun 2017 20:43:22 +0200] rev 2576
effectflag: activate effect flag on test-split.t test file
Prepare activation of effect flag by default by activating it on test-split.t
test file first.
Boris Feld <boris.feld@octobus.net> [Sun, 04 Jun 2017 20:38:04 +0200] rev 2575
effectflag: activate effect flag on test-evolve-cycles.t test file
Prepare activation of effect flag by default by activating it on test-evolve-
cycles.t test file first.
Boris Feld <boris.feld@octobus.net> [Sun, 04 Jun 2017 20:33:45 +0200] rev 2574
effectflag: activate effect flag on test-evolve-obshistory-complex.t test file
Prepare activation of effect flag by default by activating it on test-evolve-
obshistory-complex.t test file first.
Boris Feld <boris.feld@octobus.net> [Sun, 04 Jun 2017 20:30:46 +0200] rev 2573
effectflag: activate effect flag on test-prune.t test file
Prepare activation of effect flag by default by activating it on test-prune.t
test file first.
Boris Feld <boris.feld@octobus.net> [Fri, 02 Jun 2017 19:53:42 +0200] rev 2572
effectflag: activate effect flag on test-evolve.t test file
Prepare activation of effect flag by default by activating it on test-evolve.t
test file first.
Boris Feld <boris.feld@octobus.net> [Fri, 02 Jun 2017 19:33:21 +0200] rev 2571
effectflag: activate effect flag on test-obsolete test file
Prepare activation of effect flag by default by activating it on test-
obsolete.t test file first.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 09 Jun 2017 01:39:42 +0100] rev 2570
obscache: directly allocate zeroed bytearray
This is much faster that incrementally appending to it. On mozilla central
without obsolescence markers this move full cache building from 0.3s to nothing
visible.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 09 Jun 2017 01:26:29 +0100] rev 2569
obscache: plug on core 'update cache' method if available
I was planning to have this implemented in core but since things are not getting
in I'm updating evolve.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 15 Jun 2017 11:31:07 +0200] rev 2568
obscache: pre-indent code
This will make the next changeset clearer.
Boris Feld <boris.feld@octobus.net> [Thu, 15 Jun 2017 13:26:05 +0200] rev 2567
fix: fix _headssummary call to orig
65cf338258d2 one of two orig call wasn't compatible with mercurial version <
4.3, fix it.
Boris Feld <boris.feld@octobus.net> [Thu, 15 Jun 2017 14:44:45 +0200] rev 2566
test-update: update hg update output in test files
Following hg revision 1b5c61d38a52, hg update now show the commit to which we
updated in case of multiple heads. test-obsolete.t and test-sharing.t falls in
these situations, acknowledge the new outputted line.
Boris Feld <boris.feld@octobus.net> [Thu, 15 Jun 2017 14:36:54 +0200] rev 2565
test-drop: all obsmarkers are now dropped
Previously, hg drop may leave some obsmarkers behind, like with temporary
amend commit.
Following mercurial revision 71eb6a098315, strip now correctly remove the
associated obsmarkers and as drop is also calling strip, the bug is now
resolved.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 15 Jun 2017 13:10:43 +0200] rev 2564
test-evolve: garbage collection changeset only, not obsmarkers
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 15 Jun 2017 13:03:45 +0200] rev 2563
test-inhibit: adapt to 4.3
version 4.3 introduce markers stripping with strip. We adapt the test output to
the (harmless) consequence.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 15 Jun 2017 13:00:16 +0200] rev 2562
test-exchange-case-D3: avoid stripping obsolescence marker
The test needs to have changeset unknown locally with obsolescence markers still
applying to them. So we make sure the markers are not stripped (future 4.3 strip
markers by default).
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 15 Jun 2017 12:59:59 +0200] rev 2561
test-exchange-case-D2: avoid stripping obsolescence marker
The test needs to have changeset unknown locally with obsolescence markers still
applying to them. So we make sure the markers are not stripped (future 4.3 strip
markers by default).
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 15 Jun 2017 12:59:38 +0200] rev 2560
test-exchange-case-D1: avoid stripping obsolescence marker
The test needs to have changeset unknown locally with obsolescence markers still
applying to them. So we make sure the markers are not stripped (future 4.3 strip
markers by default).
Boris Feld <boris.feld@octobus.net> [Wed, 14 Jun 2017 15:08:40 +0200] rev 2559
test: fix test-discovery-obshashrange.t new output
Update test-discovery-obshashrange.t test file with new mercurial dev output.
Boris Feld <boris.feld@octobus.net> [Wed, 14 Jun 2017 13:56:40 +0200] rev 2558
fix: fix _headssummary api
_headssummary now takes directly the pushop, update the topic extension
wrapping to fix the API.
André Sintzoff <andre.sintzoff@gmail.com> [Wed, 31 May 2017 22:15:34 +0200] rev 2557
url: update url to point to https://www.mercurial-scm.org/repo/evolve
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 08 Jun 2017 20:52:40 +0100] rev 2556
doc: document the evolve templates
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 08 Jun 2017 02:58:54 +0100] rev 2555
test: fix template condition for obsfate
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 07 Jun 2017 10:22:00 +0100] rev 2554
obscache: add a missing "new line" at the end of a debug message
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 07 Jun 2017 01:38:48 +0100] rev 2553
default: merge back with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 05 Jun 2017 10:21:38 +0100] rev 2552
obscache: shortcut the attribute access for testing
The attribute access adds a significant overhead. we can gain -20% performance
by doing so.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 07 Jun 2017 00:48:12 +0100] rev 2551
obshashrange: add an option to protect from accidental activation
The new 'obshashrange.max-revs' option is meant to help large installation like
bitbucket to avoid impact on repositories that cannot handle it.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 07 Jun 2017 00:12:08 +0100] rev 2550
obshashrange: basic proof reading of the documentation
Nothing major but this should be a bit better.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 05 Jun 2017 10:21:26 +0100] rev 2549
proofread
Boris Feld <boris.feld@octobus.net> [Fri, 02 Jun 2017 19:07:35 +0200] rev 2548
effectflag: fix content change detection for filtered revs
In some cases (like amended an obsolete changeset), computing the diff and
comparing them need to work with filtered revisions. We need to use unfiltered
change contexts to safely compute diffs.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 05 Jun 2017 10:15:00 +0100] rev 2547
debugobsstorestat: adds static about actually obsolete changeses
Kyle Lippincott <spectral@google.com> [Tue, 06 Jun 2017 15:10:13 -0700] rev 2546
evolve: fix typo: -list -> --list
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Jun 2017 16:26:00 +0200] rev 2545
Added tag 6.3.1 for changeset e358c0263e46
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Jun 2017 16:25:50 +0200] rev 2544
prepare release 6.3.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Jun 2017 03:35:45 +0200] rev 2543
merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Jun 2017 03:32:10 +0200] rev 2542
packaging: bump to 6.4.0.dev
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Jun 2017 03:19:07 +0200] rev 2541
serveronly: also backport the fixes from 5adb8bdb935e
The fixes to the computation of "relevant" markers. Was missing for server only.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Jun 2017 02:48:58 +0200] rev 2540
merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Jun 2017 02:31:31 +0200] rev 2539
readme: merge 6.2.2 and 6.3.0 changelog
6.2.2 never happened.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Jun 2017 02:30:55 +0200] rev 2538
packaging: mark as version 6.3.1.dev
This reduce confusion when installing version from source.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Jun 2017 02:28:36 +0200] rev 2537
readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 31 May 2017 14:36:25 +0200] rev 2536
Added tag 6.3.0 for changeset 6da4ca7b3e4f
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 31 May 2017 14:35:21 +0200] rev 2535
packaging: prepare release 6.3.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 31 May 2017 14:29:16 +0200] rev 2534
test-compat: merge with mercurial-3.9
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 31 May 2017 14:28:14 +0200] rev 2533
test-compat: merge with mercurial-4.0 branch
The new 'olog' command is not working with 3.9 so we skill all mentions of it in
the tests. This also apply to the topic extensions.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 31 May 2017 14:23:45 +0200] rev 2532
test-compat: merge with mercurial-4.1
hg log has no trouble field in mercurial 4.0, output fixed.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 31 May 2017 14:21:18 +0200] rev 2531
test-compat: merge with stable
Nothing special to report, minor test-metaedit.t output change.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 31 May 2017 14:12:33 +0200] rev 2530
merge with default
Boris Feld <boris.feld@octobus.net> [Wed, 31 May 2017 12:09:24 +0200] rev 2529
compat: fix stablerange for mercurial 3.9
Lrudict.get change of api between mercurial 3.9 and mercurial 4.2. Bypass this
limitation by using lrudict.__getitem__ and catch the KeyError directly.
Boris Feld <boris.feld@octobus.net> [Tue, 30 May 2017 22:09:28 +0200] rev 2528
template: fix successors and precursors templates
In mercurial 4.1-, the gen argument is expected to be an iterator and not an
iterable, fix successors and precursors templates.
Boris Feld <boris.feld@octobus.net> [Tue, 30 May 2017 19:59:57 +0200] rev 2527
lint: remove double newline in test file
Test file test-stablesort-criss-cross.t contained two double newline, I remove
them.
Boris Feld <boris.feld@octobus.net> [Tue, 30 May 2017 19:43:14 +0200] rev 2526
template: fix precursors template for older mercurial version
In mercurial 4.1 and below templatekw._hybrid require the gen argument to be different
than None. Manually compute the same default output for these older mercurial
versions.
Boris Feld <boris.feld@octobus.net> [Tue, 30 May 2017 13:16:43 +0200] rev 2525
compatibility: backport mercurial 176d1a0ce385
Backport obsstore.relevantmarkers change for including previously forgotten
pruned obs markers. Target mercurial version lesser than 4.3.
This impact multiple tests. All test changes has been manually checked.
Since the computation of relevant obsmarkers have changed, we are bumping the
cache schema version. So that caches get recomputed.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 17:39:00 +0200] rev 2524
evolve: fix import order
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 26 May 2017 14:47:33 +0200] rev 2523
compat: adapt to buildobsmarkerspart move
The function has been moved in e70d6dbde713 so we must we search in both
location.
Boris Feld <boris.feld@octobus.net> [Tue, 30 May 2017 11:06:24 +0200] rev 2522
effetflag: detect other meta (extra) changes
Check other changeset meta other than branch and *_source and if there is a
change, set the METACHANGED effect flag.
Add a test for this scenario with a topic change.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 17:32:39 +0200] rev 2521
obsdiscovery: add an option to disable all obsdiscovery
On large repository, computing the obshashtree can we as slow as resending
everything. We give the option for people to opt out.
Boris Feld <boris.feld@octobus.net> [Tue, 30 May 2017 11:39:45 +0200] rev 2520
effectflag: better diff detection
Improve the diff detection algorithm to have less false positive like in the
case of a rebase that move the hunk in the file but the hunk stays the same.
Boris Feld <boris.feld@octobus.net> [Tue, 30 May 2017 11:38:30 +0200] rev 2519
effectflag: add a test for content detection
Add a test for diff detection when the diff is different but only because of
line numbers. The test is a append at the end of the file and we try to rebase
it. We shouldn't detect a content change, it will be done in the next patch.
Boris Feld <boris.feld@octobus.net> [Tue, 30 May 2017 14:46:36 +0200] rev 2518
test: fix test-evolve-effectflags dates
Mercurial < 4.3 don't have default date so add globs in the test-metaedit.t
file.
Boris Feld <boris.feld@octobus.net> [Tue, 30 May 2017 14:43:20 +0200] rev 2517
test: fix metaedit tests by forcing dates
Mercurial < 4.3 don't have default date so restore aliases forcing date in the
test-metaedit.t file.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 16:39:59 +0200] rev 2516
test: split test-stablesort.t in two
This is the longest running test so we split it in two to help with parallel
execution.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 13:01:11 +0200] rev 2515
obsdiscovery: automatically pick protocol in a list
This makes the code cleaner, clearer and more flexible. This also prepare the
ability to disable obsmarkers discover entirely.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 14:35:40 +0200] rev 2514
obsdiscovery: extract push-obshashtree discovery in a function
This will help use to simplify the code.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 14:27:26 +0200] rev 2513
obsdiscovery: directly use the 'only' revset for obshashtree
The revset now exists and is fast. This remove the needs to hold a reference to
"revs" in that code.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 14:21:10 +0200] rev 2512
obsdiscovery: extract push-obshashrange discovery in a function
This will help us to simplify the code. The code is updated to directly use
'outgoing' missing so that is no longer needs to access 'futureheads'.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 14:09:06 +0200] rev 2511
obsdiscovery: merge two distinct if statement
It did not made any sense for them to be split.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 12:32:14 +0200] rev 2510
obsdiscovery: extract '_canobshashtree'
having this as a simple function will help use to generalise the obsdiscovery
algorithm we use.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 12:26:57 +0200] rev 2509
obsdiscovery: move code inserting discovery at the end of the file
This makes it easier to reuser function defined earlier in the file.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 12:15:52 +0200] rev 2508
obsdiscovery: trust core to do the right thing if no discovery is available
This is fixed for a long time now.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 12:13:14 +0200] rev 2507
obsdiscovery: factor the "do we push markers" check out
This clarify the code a bit.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 11:55:58 +0200] rev 2506
stablerange: also respect the 'warm-cache' config
This will help large install to enable obshashrange as "opt-in" without
impacting other repositories.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 11:49:00 +0200] rev 2505
debugstablerange: cleanly "Abort" when no revision are specified
Previously we had a traceback from a max on an empty sequence.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 11:12:02 +0200] rev 2504
stablerange: use last recently used caching for revisions associated to ranges
This does not make things faster but at least it make them able to finish on
large repositories.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 30 May 2017 11:12:12 +0200] rev 2503
stablerange: report progress more often in slow case
For small repositories the time spent in progress was problematic. However on
large repository it quickly becomes negligible, so we add a way to detect this
case and report more often in this case.
Boris Feld <boris.feld@octobus.net> [Mon, 29 May 2017 14:03:31 +0200] rev 2502
template: update successors template output
Use templatekw._hybrid as return value for precursor template, it's nicer and
easier to play with than returning a formatted string.
Boris Feld <boris.feld@octobus.net> [Mon, 29 May 2017 17:54:14 +0200] rev 2501
test: extract metaedit tests into test-metaedit.t test file
The metaedit command deserver it own test file and this shave of 15% of the
runtime of test-evolve.t one of our longest tests.
Boris Feld <boris.feld@octobus.net> [Mon, 29 May 2017 12:15:47 +0200] rev 2500
template: update precursors template output
Use templatekw._hybrid as return value for precursor template, it's nicer and
easier to play with than returning a formatted string.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 29 May 2017 17:16:15 +0200] rev 2499
template: skip "fate" in test output when empty
This should clarify the test output a bit.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 29 May 2017 17:13:21 +0200] rev 2498
template: skip "successors" in test output when empty
This should clarify the test output a bit.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 29 May 2017 17:10:45 +0200] rev 2497
template: make the template definition more manageable
Readable config is readable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 29 May 2017 17:07:23 +0200] rev 2496
template: skip "Precursors" in test output when empty
This should clarify the test output a bit.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 29 May 2017 16:59:59 +0200] rev 2495
template: move each template on its own line during tests
This will clarify the various coming changes around template.
Boris Feld <boris.feld@octobus.net> [Mon, 29 May 2017 11:03:13 +0200] rev 2494
refactoring: rename obsfate template to obsfate_quiet
As I don't know how to handle templates arguments, create different templates
for each verbosity level wanted.
Boris Feld <boris.feld@octobus.net> [Mon, 29 May 2017 16:39:32 +0200] rev 2493
doc: add documentation about effectflag experiment
Boris Feld <boris.feld@octobus.net> [Fri, 26 May 2017 18:27:59 +0200] rev 2492
effectflag: split effect flag meta
Split effect flag meta into 3 separate flags:
- USERCHANGED
- DATECHANGED
- BRANCHCHANGED
Also display them separately for the moment, they could be grouped back
together if we want later.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 26 May 2017 21:31:07 +0200] rev 2491
tests: update missing amend
(I need a hook)
Boris Feld <boris.feld@octobus.net> [Fri, 26 May 2017 19:21:36 +0200] rev 2490
template: update obsfate to be more human friendly
Approach the obslog output for the moment.
Boris Feld <boris.feld@octobus.net> [Fri, 26 May 2017 13:28:49 +0200] rev 2489
template: add the obsfate template
Reuse _getobsoletefate and nextvisiblesuccessors to easily get the
obsolescence fate of any node. The limitation is that obsfate is as precise as
these two functions, which is not great for nextvisiblesuccessors.
Boris Feld <boris.feld@octobus.net> [Fri, 26 May 2017 13:18:26 +0200] rev 2488
refactor: extract obs fate algorithm from _getobsoletereason
Refactor _getobsoletereason to extract the obs fate computation into a
separate function, it will be used later and put it in obshistory as it will
be needed in other files.
Rename _getobsoletereason to _getobsoletefateandsuccessors.
Boris Feld <boris.feld@octobus.net> [Fri, 26 May 2017 10:05:37 +0200] rev 2487
template: add successors template
The successors templates display the closest visible successors of each
changeset, we may have gap, like in this case:
A -> B -> C -> D
If we display A, C and D but not B, we can't display than B is the closest
successor of A because it's not displayed. We display C as the closest
successor of A instead.
Boris Feld <boris.feld@octobus.net> [Fri, 26 May 2017 10:05:27 +0200] rev 2486
template: add precursors template
The precursors templates display the closest visible precursors of each
changeset, we may have gap, like in this case:
A -> B -> C
If we display A and C but not B, we can't display than B is the closest
precursor of C because it's not displayed. We display A as the closest
precursor of C instead.
Add a new test file as we will need to generate theses gaps and modifying
test-evolve-obshistory.t will lead to many unrelated lines changes.
Boris Feld <boris.feld@octobus.net> [Fri, 26 May 2017 16:00:05 +0200] rev 2485
refactor: extract templates into a new file
Extract evolve template from evolve/__init__.py to evolve/templatekw.py as
more templates will come in the future.
Boris Feld <boris.feld@octobus.net> [Tue, 23 May 2017 19:48:04 +0200] rev 2484
obshistory: add the all option to obslog to show the while obs tree
Add a --all option to obslog in order to display also the successors of each
obs markers. It has the effect of showing a more comprehensive graph when a
split or a divergence happened.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 26 May 2017 16:12:07 +0200] rev 2483
merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 26 May 2017 15:57:17 +0200] rev 2482
readme: update changelog for 6.2.2
Boris Feld <boris.feld@octobus.net> [Fri, 26 May 2017 15:01:21 +0200] rev 2481
test: fix test-evolve.t
Metaedit take the current date when no date is given. When we added default-
date, the date ended up to be the same and the behavior changed. Fix the text
by disabling default-date in the metaedit call and update the comment about
what is needed to fix correctly the test; take the changeset date when
metaediting only one changeset.
Boris Feld <boris.feld@octobus.net> [Fri, 26 May 2017 10:25:16 +0200] rev 2480
test: split evolve cycle tests in a separate test file
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 May 2017 21:14:04 +0200] rev 2479
evolve: fix --rev with --list
This was untested and never worked.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 24 May 2017 18:17:01 +0200] rev 2478
test: improve the globing for obsmarker date
If we force the date of obsmarkers, they will no longer include "20".
Boris Feld <boris.feld@octobus.net> [Tue, 23 May 2017 19:21:43 +0200] rev 2477
test: rename all olog references
Replace them by hg obslog which is more explicit.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 24 May 2017 18:17:01 +0200] rev 2476
test: improve the globing for obsmarker date
If we force the date of obsmarkers, they will no longer include "20".
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 24 May 2017 16:43:04 +0200] rev 2475
documentation: recomment using blackbox with the obshashrange experiment
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 23 May 2017 10:50:56 +0200] rev 2474
merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 23 May 2017 10:49:59 +0200] rev 2473
packaging: update the development version number
This helps catch non-tagged version installed with pip.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 23 May 2017 10:48:21 +0200] rev 2472
Added tag 6.2.1 for changeset 0af99106b075
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 23 May 2017 10:48:14 +0200] rev 2471
packaging: prepare release 6.2.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 22 May 2017 16:01:59 +0200] rev 2470
compat: merge with stable
Stable has multiple changeset that solve deprecation warning for the future
Mercurial 4.3.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 22 May 2017 15:45:42 +0200] rev 2469
test-compat: merge with mercurial-3.9
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 22 May 2017 15:42:13 +0200] rev 2468
test-compat: merge with mercurial-4.0 branch
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 22 May 2017 15:34:36 +0200] rev 2467
test-compat: merge with mercurial-4.1
Nothing to report
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 22 May 2017 15:28:36 +0200] rev 2466
test-compat: merge with stable
Nothing special to report, minor blackbox output update and color extensions was
needed for test-prune.t
Boris Feld <boris.feld@octobus.net> [Mon, 22 May 2017 12:00:57 +0200] rev 2465
deprecation: fix dirstate.beginparentchange deprecation warning
Replace calls to dirstart.beginparentchange and
dirstate.endparentchange to dirstate.parentchange context manager.
Boris Feld <boris.feld@octobus.net> [Mon, 22 May 2017 14:57:47 +0200] rev 2464
deprecation: fix cmdutil.command deprecation warning
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 21 May 2017 23:58:55 +0200] rev 2463
obshistory: be more flexible about createmarkers API
The API got touched in core.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 21 May 2017 23:56:33 +0200] rev 2462
inhibit: be more flexible on createmarkers API
This API got touched in core.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 21 May 2017 14:27:23 +0200] rev 2461
merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 21 May 2017 14:20:24 +0200] rev 2460
obshashrange: document the experiment
This should help people jump in.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 21 May 2017 13:55:09 +0200] rev 2459
obshashrange: add an option to disable local cache warming
The cache still a bit too volatile an costly to update. This offer a way for
developer working copy to only compute it when used.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 20 May 2017 03:31:42 +0200] rev 2458
obshashrange: re-warm less revision after reset
rewarming every single revision get very expensive quickly. Instead we warm few
key revision and rely on the fact this will warm enough useful subrange.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 20:52:09 +0200] rev 2457
effectflag: simplify meta data change testing
Let us just do one larger test.
G: changed hgext3rd/evolve/obshistory.py
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 20:50:49 +0200] rev 2456
effectflag: add a small comment to suggest improvement
The code run but we will likely need something easier to extend.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 20:50:00 +0200] rev 2455
effectflag: handle invalid data
If we get a marker with an invalid input we should not crash the whole process.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 20:49:20 +0200] rev 2454
effetflag: move the flag back with the test of the creation logic
Previous changeset was published by mistake.
Boris Feld <boris.feld@octobus.net> [Fri, 19 May 2017 20:21:10 +0200] rev 2453
obshistory: display informations from the obs marker effect flag
Leverage the effect flag to actually show what change for each
obsmarker in the obslog command. (first basic version).
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 20:43:16 +0200] rev 2452
test: add (glob) to globed line
Ingloriously forgot to amend.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 19:45:04 +0200] rev 2451
effectflag: add test combining multiple flag
We check that multiple changes might be detected a the same time.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 20:15:05 +0200] rev 2450
effectflag: basic diff change detection
We adds some basic diff detection.
Boris Feld <boris.feld@octobus.net> [Fri, 19 May 2017 19:52:57 +0200] rev 2449
effectflag: detect parent change
Add the detection of parent changes.
Boris Feld <boris.feld@octobus.net> [Fri, 19 May 2017 19:48:44 +0200] rev 2448
effectflag: detect meta changes
Add the detection of known meta field changes. The known meta
fields that we check are:
- user
- date
- branch
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 19:43:06 +0200] rev 2447
effect-flag: rework existing test to prepare for mor tests
Boris Feld <boris.feld@octobus.net> [Fri, 19 May 2017 18:43:21 +0200] rev 2446
effectflag: allow to save effect of change in obsmarkers
Obsmarkers lack a precious information, what are the changes between
the source and the destination. This could be several thing:
- The description has changed, with a amend -e for example
- The parent has changed, with a rebase for example
- The content has changed, with a amend for example
- The meta, like the user, has change, with a amend -u for example
Or any combination of them.
We hijack the createobsmarkers in order to compute the modification
and store the effect flag which is basically a bitfield of the
changes list above and we store it in the metadata for the moment.
The advantage of computing the flag just before creating the obs marker
is that all commands will immediately be compatible and we can start
working on the UI display of the flag. As a future optimization,
the commands will be able to pass the flag directly or data to help computing
them, for example amend knows if the description has changed or rebase now if
the parent has changed, virtually removing the overhead.
To start simple, this patch add the detection and storage of the effect flag
when the description has changed. And hide it behind an experimental flag
disabled by default 'experimental.evolution.effect-flags'. More flag will
follow.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 18:07:56 +0200] rev 2445
merge back with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 17:48:44 +0200] rev 2444
readme: fix version number
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 17:34:45 +0200] rev 2443
next: prevent a color related crash when evolve
This was not caught by test because they run color less.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 17:33:27 +0200] rev 2442
prune: prevent a color related crash when the working copy is moved
This was not caught by test because they run color less.
Rodrigo Damazio Bovendorp <rdamazio@google.com> [Thu, 18 May 2017 22:40:17 -0700] rev 2441
evolve: adding longer aliases for olog
Novice users will likely find the longer versions more obvious to understand
what they're doing (olog only makes sense once you already know what it does).
Especially on the help page, "obslog" will be easier to find and make sense
of.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 11:16:22 +0200] rev 2440
debugobsstorestat: add markers size information
We adds some extra information about markers size in all known format.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 00:15:30 +0200] rev 2439
packaging: bump version to 6.3.0.dev
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 00:10:12 +0200] rev 2438
merge back with stable (post-release)
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 00:14:20 +0200] rev 2437
packaging: bump version to 6.2.1.dev
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 19 May 2017 00:11:18 +0200] rev 2436
Added tag 6.2.0 for changeset d4ee0274a8ef
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 22:20:23 +0200] rev 2435
merge back with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 23:55:02 +0200] rev 2434
merge with future 6.2.0
No extra change were needed compared to 3.9.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 23:51:10 +0200] rev 2433
merge with future 6.2.0
The new 'olog' command is not working with 3.9 so we skill all mentions of it in
the tests. This also apply to the topic extensions.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 23:35:16 +0200] rev 2432
merge with future 6.2.0
Minor unrelated output adjustements were needed.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 23:12:52 +0200] rev 2431
merge with future 6.2.0
There are been (multiple) minor output changes.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 22:26:29 +0200] rev 2430
packaging: prepare release 6.2
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 22:26:06 +0200] rev 2429
debian: fix email
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 23:58:19 +0200] rev 2428
topic: update 'tested with' and readme
We are compatible with Mercurial 4.0 and above
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 22:25:43 +0200] rev 2427
readme: rearrange readme before release
There won't be a bugfix release (and other cleanup)
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 23:24:57 +0200] rev 2426
test: reduce output size to fight unstability
Until `hg touch` can be more stable, we have to do this :-/
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 22:57:20 +0200] rev 2425
tests: disable blackbox for 'getid'
This will significantly simplify the blackbox log.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 22:42:13 +0200] rev 2424
compat: handle lack of 'util.timer' for pre 4.2 version
We keep compatibility with previous Mercurial version by redefining the timer
when needed.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 22:53:01 +0200] rev 2423
test: enforce color to be enabled
4.2 enable color by default and start to get used in test. So we add this to the
test for previous version.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 22:12:05 +0200] rev 2422
merge with default
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 21:59:10 +0200] rev 2421
tests: add a test about strip with obshashrange enable
I've seen some traceback but I cannot reproduce them. This tests seems useful
anyway.
Boris Feld <boris.feld@octobus.net> [Thu, 18 May 2017 18:35:34 +0200] rev 2420
obshistory: add a json test with cycles
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 18:40:20 +0200] rev 2419
tests: glob an absolute path
The ssh command path was in full and pointing the mercurial checkout of the last
one who touched the test.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 18:34:26 +0200] rev 2418
olog: document the default value
We actually display the log for '.' which is useful.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 18:29:28 +0200] rev 2417
readme: rearrange changelog content
blackbox is more important than the various caches changes.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 18:18:01 +0200] rev 2416
obshistory: rename the command to "olog"
The command start to look good enough to be handed out to user. We replace the
old and useless "olog" alias in favor of the new command.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 18:04:47 +0200] rev 2415
obshistory: move the command into the obshistory module
The root module is far too large already.
Boris Feld <boris.feld@octobus.net> [Thu, 18 May 2017 17:40:07 +0200] rev 2414
obshistory: add docstring to cmddebugobshistory
Add debugobshistory command documentation based on the log command
documentation.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 17:47:59 +0200] rev 2413
obshashrangecache: make sure we re-warm the cache after a reset
This will "mitigate" the effect of dropping existing entries when new markers
affect existing range.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 17:35:36 +0200] rev 2412
obshashrangecache: precisely track affected revs when adding new markers
This will be useful when we start doing finer grained invalidation (instead of
dropping all data).
Boris Feld <boris.feld@octobus.net> [Thu, 18 May 2017 14:58:22 +0200] rev 2411
debugobshistory: handle multiple cycles
We previously handled up to one cycle only. This is now fixed.
Boris Feld <boris.feld@octobus.net> [Thu, 18 May 2017 14:49:02 +0200] rev 2410
test: clean the debugobshistory cycle test
Use 'desc(...)' instead of revision numbers.
Also blank lines between commands in the same test
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 17:03:11 +0200] rev 2409
obsdiscovery: add more debug output
we add a summary debug output to help gathering data.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 16:59:25 +0200] rev 2408
discovery: log information about obshashrange
We augment the blackbox output to help with data gathering.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 11:29:27 +0200] rev 2407
obshistory: add a graph option on the debugobshistory command
Add a graph option (--graph) to the debugobshistory. The output is
like the 'hg log -G' output. The option is activated by default but
can be deactivated with '--no-graph' option.
There are various issue with the current implementation (multiple cycles
handling, N² complexity) but this can be fixed later.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 11:29:23 +0200] rev 2406
obshistory: import 'node' as 'nodemod'
This simplify the next changeset.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 11:00:06 +0200] rev 2405
label: add a label for the node in the "wc now at" message
MOAR COLOR FOR THE COLOR GOAD!
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 18 May 2017 10:56:08 +0200] rev 2404
label: rename 'evolve.short_node' to 'evolve.node'
A wider labelk will helps compatibility.
Boris Feld <boris.feld@octobus.net> [Wed, 17 May 2017 19:20:43 +0200] rev 2403
obshistory: refactor debugobshistory
Rename the function and extract the heavy work of the command
in a separate module named obshistory.py
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 18:54:48 +0200] rev 2402
test: adapt to change in cache warming in core
Core Mercurial has a more rational cache warming strategy now. 24f55686a63d
stopped warming of the cache after every changegroup application (in favor of
end of transaction warming). This reflect in the blackbox test output.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 18:38:13 +0200] rev 2401
test: adapt to change in cache warming in core
Core Mercurial has a more rational cache warming strategy now. 2b6692df1bdf
stopped warming of the cache after every commit (in favor of end of transaction
warming). This reflect in the blackbox test output.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 18:47:22 +0200] rev 2400
stablerangecache: avoid crash when 'cache/' directory is missing
If the directory is missing, we create it.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 18:40:48 +0200] rev 2399
obshashrange: avoid crash when 'cache/' directory is missing
If the directory is missing, we create it.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 17:16:59 +0200] rev 2398
tests: apply output changes from core fix
Mercurial core fixed a bug were the obsolete set (and all depending data) stayed
invalid after markers were merged. Fixing this bug is fixing some bad output on
the evolve side so we apply the output change.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 15:49:21 +0200] rev 2397
packaging: mention 'dev' status in the version number
Boris Feld <boris.feld@octobus.net> [Wed, 17 May 2017 09:28:10 +0200] rev 2396
color: update the shorttemplate to use colors
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 14:49:02 +0200] rev 2395
merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 14:40:18 +0200] rev 2394
obshashrange: cleanup 'valid' life cycle
- reset is only called when we detect a strip, the on disk data are invalid,
- after a reset, we should not keep using the data base connection,
- after a write, the on disk data are valid.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 12:27:13 +0200] rev 2393
obsrangecache: raise programming error when using an unwarmed cache
This will provide a better experience for developer using this the cache.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 13:27:29 +0200] rev 2392
obshashrange: stop marking on-disk data as invalid on clear
This was abusing and prevent proper use of the on disk cache.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 13:16:18 +0200] rev 2391
obshashcache: purge the meta line before writing a new one
Otherwise we get multiple lines and this gets messy.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 13:14:50 +0200] rev 2390
obshashrange: drop spurious whitespace
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 12:25:56 +0200] rev 2389
obshashcache: invalidate affected cache entries on side
Calling reset during upgrade is screwing up the cache key update.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 12:26:15 +0200] rev 2388
obshashcache: properly break out of all loops
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 12:23:10 +0200] rev 2387
dualsourcecache: simplify cachekey.clear
We do not needs the super call anymore and we can make the reset case more
explicit. So we do.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 11:58:48 +0200] rev 2386
tests: small test update
This is a bit clearer.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 11:23:33 +0200] rev 2385
dualsourcecache: fix obskey return by _checkkey
The function was returning the old key instead of the new one. This is now
fixed.
Boris Feld <boris.feld@octobus.net> [Wed, 17 May 2017 11:47:14 +0200] rev 2384
test: update test-obsolete.t to use common.sh
The definition of getid() in the test file was wrong, use the one
from common.sh instead
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 16 May 2017 12:23:31 +0200] rev 2383
obshashrange: log reset from new markers
This will help tracking performance impact from current limitation.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 16 May 2017 12:18:46 +0200] rev 2382
dualsourcecache: log cache reset
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 16 May 2017 17:03:34 +0200] rev 2381
stablerange: log time spent updating the stable range
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 16 May 2017 16:56:37 +0200] rev 2380
cache: track time spend updating various cache
This produce more useful blackbox log.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 16 May 2017 15:20:53 +0200] rev 2379
obshashrange: adds blackbox usage in tests
This will help track the validation of the cache.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 16 May 2017 12:45:08 +0200] rev 2378
obshashrange: test behavior in case of rollback
The cache should be properly invalidated.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 16 May 2017 12:42:50 +0200] rev 2377
obshashrange: extend tests
We test more situations.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 16 May 2017 12:18:30 +0200] rev 2376
dualsourcecache: add a cache name
This will be used to automatically log message for blackbox
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 16 May 2017 12:17:13 +0200] rev 2375
obscache: stop definition of the empty key
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 16 May 2017 11:41:36 +0200] rev 2374
obshashrange: keep value fetched from sql in memory
This will reduce the number of roundtrip to the data base we need.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 16 May 2017 11:37:45 +0200] rev 2373
obshashrange: stop inheriting from 'dict'
A simple dictionary attribute seems more simpler.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 09:52:06 +0200] rev 2372
merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 00:23:19 +0200] rev 2371
obshashrange: to not overwrite the list with the set
We reusing the list variable lower in the code.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 00:22:24 +0200] rev 2370
obshashrange: properly break out of the two loops
Otherwise we would continue to iterate even after we reseted the cache.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 May 2017 00:21:30 +0200] rev 2369
obshashrange: fix reset conditional
If the revision is in "revs" we should not reset the cache. The old code was
wrong (Thanks goes to new tests for catching this).
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 16 May 2017 11:21:41 +0200] rev 2368
cache: ensure we warm stablerange cache before the obshashrange cache
I've been seeing traceback that seems to be happening because of issues in this
area.
Rodrigo Damazio Bovendorp <rdamazio@google.com> [Tue, 16 May 2017 23:37:10 -0700] rev 2367
evolve: fixing obscache invalidation
This was missing a call to the parent's destroyed(), such that any transaction
after stripping some nodes would result in a crash (by attempting to read nodes
which were stripped).
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 21:21:31 +0200] rev 2366
obshashrange: warm the cache at the end of each transaction
This will help having warmed cache for read only client.
The warming is still imperfect in case of markers that trigger a reset, but we
are in a better place than what we used to be.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 21:00:39 +0200] rev 2365
obshashrange: warm cache outside of loops
The performance impact will be lower
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 21:20:02 +0200] rev 2364
obshashrange: "update" the cache on each transaction close
Right now the "update" does not really file the cache, but it will detect
invalid situation and clean them.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 20:52:19 +0200] rev 2363
obshashrange: properly invalidate the cache on destroyed
Copy paste is the scurge of code source.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 20:49:27 +0200] rev 2362
obshashrange: properly drop the current connection on clear
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 20:40:00 +0200] rev 2361
obshashrange: exit early if nothing to write
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 20:29:54 +0200] rev 2360
obshashrange: use the dualsourcecache as a base for the cache
This will easily open the way to incrementally updated obshashrange cache.
Small update are needed to the data base schema so be bump the version
Currently the update function is not warming the cache (but details case where
it is invalidated).
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 20:28:09 +0200] rev 2359
obscache: makes dualsourcecache compatible with obshashrange cache needs
The goal of the abstract method is to be reusable. So we make sure it is
reusable.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 21:20:40 +0200] rev 2358
readme: add a changelog entry about the more efficient obscache
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 19:18:49 +0200] rev 2357
obscache: extract a data agnostic class
We now have an independent class that we can reuse for other purpose
(eg: obshashrange cache)
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 19:07:14 +0200] rev 2356
obscache: extract the actual data update in a dedicated function
This will help extract a data agnostic class.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 19:05:46 +0200] rev 2355
obscache: move an assert to a lower level
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 19:04:13 +0200] rev 2354
obscache: use 'nullid' as the hash of an empty obsstore
This align this result with what we use for 'emptykey'
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 18:56:56 +0200] rev 2353
obcache: move empty on the class
We'll extract a smaller data agnostic class but we need to gather all method on
it first.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 18:56:42 +0200] rev 2352
obcache: move _checkkey on the class
We'll extract a smaller data agnostic class but we need to gather all method on
it first.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 May 2017 18:52:59 +0200] rev 2351
obcache: move updateneeded on the class
We'll extract a smaller data agnostic class but we need to gather all method on
it first.