Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 14 Jul 2017 00:58:14 +0200] rev 2734
prev: rename 'p' to 'target'
This makes the code clearer.
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 14 Jul 2017 00:54:48 +0530] rev 2733
topics: check for topic on commit before a user enters message
We have a enforce-topic cofig which can forbid user to commit without a topic on
it. We used to check topic on a commit after the user enters message, but we
should fail early.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 14 Jul 2017 03:14:27 +0200] rev 2732
packaging: update readme
I forgot again.
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 11 Jul 2017 21:39:39 +0530] rev 2731
topics: add a new flag --age which will show last touched time for topics
This adds a new flag `--age` to `hg topic` command which will show topics
sorted by their last touched time and will also show the last touched time for
them.
This patch also adds a simple test to make sure the flag does not breaks by
future changes. Adding more tests showing output like "3 hours ago", "2 minutes
ago" etc will change as the code takes time.time() into account which will
increase with time, and hence the output will change, so we need some static
output like a date.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 11 Jul 2017 11:24:43 +0200] rev 2730
uncommit: expose the feature with a '--extract' to amend
The name of the "uncommit" feature have been an ongoing issue, but no better
name have been found in the past year. We try another approach by exposing the
'uncommit' feature directly in `hg amend`. The command will not be able to do
both operation a the same time (add new change to the commit + extract should
change, but this is already the case with the two command today.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 11 Jul 2017 12:00:45 +0200] rev 2729
uncommit: add support for -U and -D
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 11 Jul 2017 11:59:18 +0200] rev 2728
uncommit: add support for --user and --date
This is also long overdue
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 11 Jul 2017 11:58:07 +0200] rev 2727
uncommit: add support for --message and --logfile
This is long overdue.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 11 Jul 2017 11:12:23 +0200] rev 2726
amend: drop the implementation details from the user help
This is not relevant to users.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 11 Jul 2017 10:55:06 +0200] rev 2725
uncommit: move to the 'evocommands' module
We are about to play around with a UI mixing amend and uncommit, we take
advantage of this to split the __init__.py module a bit more.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 11 Jul 2017 10:38:01 +0200] rev 2724
amend: extract into a 'evolve.evocommands' module
We are about to play around with a UI mixing amend and uncommit, we take
advantage of this to split the __init__.py module a bit more.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 12 Jul 2017 16:09:08 +0200] rev 2723
test: handle output change in 20f533a92eda
The bundle backup name has changed.
Josef 'Jeff' Sipek <jeffpc@josefsipek.net> [Sun, 09 Jul 2017 15:01:32 +0300] rev 2722
tutorial: fix grammar and spelling
Josef 'Jeff' Sipek <jeffpc@josefsipek.net> [Sun, 09 Jul 2017 14:23:27 +0300] rev 2721
tutorial: word wrap long lines
Josef 'Jeff' Sipek <jeffpc@josefsipek.net> [Sun, 09 Jul 2017 14:20:24 +0300] rev 2720
tutorial: use rm instead of 'hg rm' for an untracked temporary file
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 09 Jul 2017 14:41:13 +0200] rev 2719
readme: update with various topic improvement
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 06 Jul 2017 03:31:11 +0530] rev 2718
topics: add a config knob to forbid untopiced commit
After this patch one can add the following to their hgrc to stop allowing new
commits with no topic on it.
[experimental]
enforce-topic = yes
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 06 Jul 2017 03:56:36 +0530] rev 2717
topics: update the help for `hg topics` describing ways to use the command
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 07 Jul 2017 01:01:01 +0200] rev 2716
branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 06 Jul 2017 23:33:28 +0200] rev 2715
obshashrange: add cache warming instruction to the documentation
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 04 Jul 2017 10:49:14 +0200] rev 2714
evolve: explain how to disable markers discovery in the documentation
This is useful for large repository.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 06 Jul 2017 23:33:28 +0200] rev 2713
obshashrange: add cache warming instruction to the documentation
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 04 Jul 2017 01:30:14 +0530] rev 2712
topics: add t0 and b0 to the stack
t0 or b0 will be the base of the stack and it's the parent of t1 or b1. The cool
thing about this is that if you update to t0 using `hg up t0` or do `hg prev` on
t1, you will be updated to t0 with the current topic preserved.
This patch adds t0 to stack and implement the preserving topic case for t0 while
using `hg update`.
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 04 Jul 2017 00:15:36 +0530] rev 2711
topics: wrap the update function to check if either t0 or b0 is passed as rev
t0 or b0, seriously, what's that. Do they even exist? Hold on and look for the
next commits what we are trying to do.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 07 Jul 2017 00:42:18 +0200] rev 2710
compat: adapt to change in 53b3a1968aa6-core
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 19:43:44 +0200] rev 2709
merge back with stable
(version updated in the process)
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 19:42:23 +0200] rev 2708
packaging: update versions to '.dev' one
This help to spot install from unreleased source.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 19:40:56 +0200] rev 2707
Added tag 6.5.0 for changeset 734c0bc066cd
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 19:35:38 +0200] rev 2706
packaging: prepare version 6.5.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 19:34:30 +0200] rev 2705
topic: update extensions metadata
Let us assign a version number to this release and add some more data about the
extensions.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 19:31:11 +0200] rev 2704
readme: prepare version 6.5.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 17:28:53 +0200] rev 2703
compat: merge with mercurial-3.9
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 17:28:38 +0200] rev 2702
compat: merge with mercurial-4.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 17:28:15 +0200] rev 2701
compat: merge with mercurial-4.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 18:22:39 +0200] rev 2700
compat: merge with stable
Nothing to report beside the drop of the obsfate related tests.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 18:07:23 +0200] rev 2699
evolve: preserve the branch of the original changeset when evolving merge
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 17:24:56 +0200] rev 2698
merge: default into stable to prepare next version
Let us prepare ourself for 6.5.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 17:13:35 +0200] rev 2697
obslog: handle patch generation for mercurial 4.1-
The unidiff API changed, we detect and work around that.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 16:39:48 +0200] rev 2696
topic: also have the revbranchcache during the discovery
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 16:00:38 +0200] rev 2695
topic: cleanup the repository wrapping logic in topic discovery
We are know overriding the class so we do not need to update and restore the
pushop itself.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 15:02:51 +0200] rev 2694
topic: adapt to function migrate to obsutil
Mercurial 4.3 has a new module "obsutil" and multiple functions moved there. We
handle the move for the one we care about.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 15:02:11 +0200] rev 2693
evolve: adapt to function migrate to obsutil
Mercurial 4.3 has a new module "obsutil" and multiple functions moved there. We
handle the move for the one we care about.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 14:10:44 +0200] rev 2692
topic: directly use the '_notpublic' revset
This is just more robust to achieve the same goal.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 13:49:32 +0200] rev 2691
topic: drop the message about running evolve after topic change
Topic change is no longer creating a mess that needs cleaning.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Jul 2017 13:48:45 +0200] rev 2690
template: handle lack of "users" in the obsfate data
This can happens when their are no markers (or the markers has no user data?)
Boris Feld <boris.feld@octobus.net> [Fri, 30 Jun 2017 16:29:26 +0200] rev 2689
doc: update effect flag documentation
Boris Feld <boris.feld@octobus.net> [Mon, 26 Jun 2017 17:20:08 +0200] rev 2688
obsfate: override the default log output
Override the default log output by showing obsfate if not empty.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 29 Jun 2017 23:42:29 +0200] rev 2687
evolve: fix documentation formatting
The config example were formatted as standard paragraph.
Boris Feld <boris.feld@octobus.net> [Thu, 29 Jun 2017 18:22:06 +0200] rev 2686
compat: fix topicset for mercurial 4.1
The 'getrevset' method is not available there.
Boris Feld <boris.feld@octobus.net> [Mon, 26 Jun 2017 17:19:03 +0200] rev 2685
obsfate: refactor obsfate data computing
Refactor how obsfate data are computed in order to reuse this logic later when
hooking on default log output.
Boris Feld <boris.feld@octobus.net> [Thu, 29 Jun 2017 16:49:33 +0200] rev 2684
topic: exclude public and topic changeset from branch stack
Stack use-case is to show the current work in progress, which are symbolized by
the phase draft and secret phase. Moreover showing public changesets in stack
output when displaying current branch would display a lot of changesets for
long-lived branches and would be quite useless.
We also exclude topic changeset form the stack since they already exist on their
own stack.
getstack revsets didn't needed update when displaying a topic as when a
changeset become public, its topic is no longer relevant.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 29 Jun 2017 16:29:08 +0200] rev 2683
tests: use a more portable form for new lines
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 29 Jun 2017 02:21:09 +0530] rev 2682
topic: don't abort if there is no current topic in stack() revset
Named branches support has been added and we should not abort if there is no
active topic.
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 29 Jun 2017 01:58:26 +0530] rev 2681
topics: return a parse error if stack() revset is passed with argument
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 29 Jun 2017 00:11:07 +0530] rev 2680
tests: add test to show topics working with shelve
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 29 Jun 2017 02:31:55 +0530] rev 2679
topics: update current topic to the topic of newly rebased commit (issue5551)
The rebase code passes branchmerge equals to True while updating to the rebased
commit. We need to make sure topic is preserved even after rebase and hence we
need to update the topic even when branchmerge argument is set to True. But
there is a twist in the tale, merge also uses this part of code and we allow to
update topic when brancmerge is True, in merge cases the topic after merge will
the topic of the destination commit, not the topic of working directory parent.
So we need the function to have information about whether a rebase is going on,
and we do it by wrapping the rebase command and storing some value in the
config. This is a bit hacky but works for now. This patch fixes issue related to
loosing of topic while rebase.
Thanks to Boris Feld for the rigourous tests.
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 27 Jun 2017 23:28:58 +0530] rev 2678
docs: some fixes to the help text
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 26 Jun 2017 21:48:33 +0530] rev 2677
topics: pass 'topics' to ui.formatter instead of 'bookmarks'
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 28 Jun 2017 17:28:56 +0200] rev 2676
topic: also insert the extra head check with using the new head checking
This will get the protection in place in all cases.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 28 Jun 2017 17:38:04 +0200] rev 2675
topic: some document for an obscure function
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 28 Jun 2017 18:18:59 +0200] rev 2674
topic: adjust head checking wrapping to not interfere with concurrent push
In the previous form, the new topic head was detected as affected and the push
was rejected.
We introduce a of 'test-topic-push.t' using the new race checker as there have
been many compatibility issue with this new checkers.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 28 Jun 2017 17:23:43 +0200] rev 2673
topic: also detect head checking using the concurrent part
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 28 Jun 2017 18:16:14 +0200] rev 2672
test: avoid 'test-check-commit.t' complaining copied code
We switch to git diff.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 28 Jun 2017 17:20:36 +0200] rev 2671
topic: small test cleanuo
The section was repeated.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 28 Jun 2017 01:53:21 +0200] rev 2670
topic: move the heads data to the branch line when appropriates
The topic line is dropped as it is quite confusing.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 28 Jun 2017 02:45:57 +0200] rev 2669
topic: add some initial support for using stack on named branch
Stack is a useful command that can make sense in other context. The current
support is hacky and awful, but we have something!
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 28 Jun 2017 01:58:09 +0200] rev 2668
topic: explicitly pass topic as a keyword argument
This clarify all callers before adding more logic related to bare branch in
stack.
Boris Feld <boris.feld@octobus.net> [Tue, 27 Jun 2017 15:21:38 +0200] rev 2667
topic: makes split keep the topic
Refactor split to extract the preparation of the working directory in a
separate function.
This helps topic wrap this function to save topic before update and restore it
after preparing the working directory just before the split.
Boris Feld <boris.feld@octobus.net> [Tue, 27 Jun 2017 09:49:35 +0200] rev 2666
topic: add tests for fold behavior with topics
Clarify the fold behavior for keeping topics.
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 25 Jun 2017 07:20:22 +0530] rev 2665
topics: pass quietempty=True to suppress useless output while changing topics
This will help in suppressing the output "0 files updated, 0 file removed, ..."
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 25 Jun 2017 06:53:22 +0530] rev 2664
topics: return early so that other if conditions don't get execute (issue5600)
We were not returning after the _changetopics() call and hence the if's below it
were also executed which resulted in changing of current topic.
This prevent current topic to be updated even when we only affect changeset
unrelated to the working copy.
Not that the rebase output change as it expose a new bug (rebased changeset gain
a topic)
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 26 Jun 2017 17:47:04 +0200] rev 2663
test: extra output to understand the next changeset better
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 25 Jun 2017 06:47:59 +0530] rev 2662
topics: move the logic to change or clear current topic into a new function
It adds a new _changecurrenttopic which changes or clears the current topic.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 26 Jun 2017 17:20:17 +0200] rev 2661
tests: expand output to check topic activation
This will help understanding later changesets.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 25 Jun 2017 18:37:42 +0200] rev 2660
branching: merge stable into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 25 Jun 2017 16:37:56 +0200] rev 2659
split: preserve author of the original changeset in the successors
Previously, the new changesets were authored by the default user.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 24 Jun 2017 13:28:16 +0200] rev 2658
grab: properly quote hg executable in the alias
Breakage has been reported on Windows.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 23 Jun 2017 10:51:18 +0200] rev 2657
topic: improve the revset used to return name->nodes mapping
The 'topic' version already filters public changeset out, and skipping 'changectx'
creation will helps performance.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Jun 2017 09:48:40 +0200] rev 2656
topic: update the changectx method to respect phases
The topic is no longer returned once the changeset is no longer mutable (unless
explicitly requested).
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 23 Jun 2017 10:21:37 +0200] rev 2655
topic: avoid crash when topic is loaded but not enabled for a repository
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Jun 2017 15:18:49 +0200] rev 2654
compat: update test to match core default state
This output changed in 560ceb654180.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Jun 2017 10:13:29 +0200] rev 2653
topicmap: massive rework
Massively rework the way we build and use topicmap. This bring massive performance
benefit.
Topic map use to be a fully independant thing that we would switch on and off
globaly. The caching on disk was broken so the performance were atrocious.
Intead, now the topic are inherited from the 'immutable' map. We gave up on
storing them on disk for now since the mutable set is usually small enough.
The activation is done by hacking new "filter" on the repository and detection
when they are one. This is hacky but core is hard to wrap here.
Overall this whole wrapping is really scary and we should massage core API to
help it.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Jun 2017 09:47:14 +0200] rev 2652
topic: use the 'topic' revset in namespace
This revset performance just got improved.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Jun 2017 09:41:01 +0200] rev 2651
topic-revset: update the revset to no longer build changectx
Atribute access is expensive, and changectx are very expensive to build, so we
skip these for better performance.
Before:
! wall 0.012195 comb 0.020000 user 0.020000 sys 0.000000 (best of 217)
After:
! wall 0.008816 comb 0.010000 user 0.010000 sys 0.000000 (best of 303)
(Before this changeset parent)
! wall 0.213261 comb 0.210000 user 0.210000 sys 0.000000 (best of 45)
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Jun 2017 09:46:30 +0200] rev 2650
topic-revset: changectx creation in the revset
The current mutability filter is very expensive, we use a more direct and
efficent way to do so:
Before:
! wall 0.213261 comb 0.210000 user 0.210000 sys 0.000000 (best of 45)
After:
! wall 0.012195 comb 0.020000 user 0.020000 sys 0.000000 (best of 217)
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 21 Jun 2017 07:32:11 +0530] rev 2649
topics: add some noise to rewrittent changeset to prevent hash cycle
If we have a changeset with topic `x`, we change it's topic to `y`, fine.
When we change it's topic back again to `x`, we get the hash of the the
obsoleted changeset which had the topic `x` initially. The same happens for few
more cases like clearing the topic of a changeset which initially had no topic.
This approach is influenced from cmdutil.amend and other commands (rebase, histedit, etc…)
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Jun 2017 13:18:47 +0200] rev 2648
topic-change: update the working copy along when changing topic of '.'
This avoids leaving the working copy behind, removing another large parts of
issue5441.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Jun 2017 13:21:08 +0200] rev 2647
topic-change: cleanup the locking and transaction mechanism
The previous code did not garanted we would release all lock (and was a bit more
complicated than needed.
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 21 Jun 2017 07:21:50 +0530] rev 2646
topics: use a dict for successors of changesets produced by topic change
This patch adds a dictionary to store the successors of changesets which got
obsoleted when we change it's topic. This is an improvement in the fix for
issue5441.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Jun 2017 11:55:45 +0200] rev 2645
topic: further simplify the clear logic
We just set 'topic' to None and the rest should follow.
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 21 Jun 2017 03:28:25 +0530] rev 2644
topics: drop the clean argument from _changetopics()
After this commit, None will represent that we want to clean the topic.
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 21 Jun 2017 02:00:01 +0530] rev 2643
topics: rename '--change' flag to '--rev' flag
The --change flag was used to read a revset of which topic should be changed. In
mercurial we use --rev for this type of flag.
Now things will work as follows:
`hg topics topicname`: It will set the current topic
`hg topics topicname --rev revset`: Change topic of all the revs in the revset
to topicname
Further patches will try to achieve the following:
`hg topics --clear --rev revset`: clear topic from all the revisions in the
revset
`hg topics --clear`: clear the current topic (Current behavior)
`hg topics --rev revset`: show topics on the revisions in the revset
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 21 Jun 2017 01:05:46 +0530] rev 2642
topics: factor out the logic to change topic in a new function
It will help to refactor and fix bugs. Moreover we can re-use the logic.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Jun 2017 11:45:15 +0200] rev 2641
obslog: update the readme
This is release not worthy
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Jun 2017 11:31:21 +0200] rev 2640
obslog: add a comment about the final new line of descriptions
Boris Feld <boris.feld@octobus.net> [Tue, 20 Jun 2017 16:22:16 +0200] rev 2639
obslog: also display description patch with --patch
When activating the --patch option, also display the description patch.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Jun 2017 11:11:37 +0200] rev 2638
obslog: extra patch indentation code
The code is simple and we need to reuse it.
Boris Feld <boris.feld@octobus.net> [Tue, 20 Jun 2017 13:49:40 +0200] rev 2637
obslog: add a patch option
Add support for '--patch' option in obslog for a similar effect than "hg log
--patch".
The patch support is only limited to a few basic cases that will be extended
in the future.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Jun 2017 19:00:31 +0200] rev 2636
obslog: clarify some sorting code
I'm not sure why Boris did it, but this belong to the next patch.
Boris Feld <boris.feld@octobus.net> [Mon, 19 Jun 2017 15:56:28 +0200] rev 2635
obslog: pass directly unfiltered_repo
_debugobshistorydisplaynode used to create two times an unfiltered repo, makes
_debugobshistoryrevs create only one unfiltered repo and pass it directly.
Boris Feld <boris.feld@octobus.net> [Mon, 19 Jun 2017 15:54:55 +0200] rev 2634
obslog: remove useless repo arg
_debugobshistorydisplaymarker used to takes repo as an argument but it isn't
needed anymore.
Boris Feld <boris.feld@octobus.net> [Mon, 19 Jun 2017 15:32:25 +0200] rev 2633
obslog: small renaming of _debugobshistorysingle
Rename _debugobshistorysingle to _debugobshistoryrevs in order to better
reflect its purpose.
Boris Feld <boris.feld@octobus.net> [Mon, 19 Jun 2017 10:33:36 +0200] rev 2632
refactoring: directly use 'ctx.unstable()' in showstack function
This is simpler and more efficient.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Jun 2017 18:46:30 +0200] rev 2631
packaging: flag default as version 6.5.0.dev
This helps to reduce confusion when installing intermediate version.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Jun 2017 18:44:17 +0200] rev 2630
merge: get stable change back into default
Boris Feld <boris.feld@octobus.net> [Sat, 17 Jun 2017 01:02:37 +0200] rev 2629
obsfate: improve obsfate output
Improve obsfate output:
* Remove newline and replace it by '; '
* Improve the hybrid object for making join(obsfate, '|') working.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Jun 2017 18:37:28 +0200] rev 2628
packagin: mark stable branch as 6.4.1.dev
This help prevent confusion with installing intermediate version
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 19 Jun 2017 03:13:35 +0530] rev 2627
topics: abort if user wants to show the stack of a non-existent topic
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 19 Jun 2017 02:50:35 +0530] rev 2626
stack: show unstable state for the current revision if it is one (issue5553)
Before this patch if the current revision is unstable, hg stack does not show
the unstable state. This patch fixes that by showing both current and unstable
state for the current revision if that's unstable.
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 19 Jun 2017 02:44:19 +0530] rev 2625
topics: some minute fixes to the documentation which shows up in help
I am not a native but these changes are simple and obvious.
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 18 Jun 2017 03:23:46 +0530] rev 2624
topics: make sure we commit on new parents while changing topics (issue5441)
While changing topics of a set of linear commits, we used to commit our new
changesets with new topic on parents of its predecessor i.e. changeset before
the topic change. If the topic of parent was also changed, that parent will
become obsolete and hence resulting the cnew commit in unstable state. For a set
of linear commits this repeats and we end up in a tree state as mentioned in the
bug.
This patch fixes the bug by checking whether the parent was obsoleted and if
yes, commit on the new parent.
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 18 Jun 2017 03:20:52 +0530] rev 2623
tests: add a test to show issue5441 in test-topic.t
The issue will be fixed in the next patch and the test will be helpful to show
that.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 17 Jun 2017 01:15:15 +0200] rev 2622
merge back with stable
(test change from stable has been reverted)
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 20:15:17 +0200] rev 2621
Added tag 6.4.0 for changeset e60248f26f92
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 20:15:04 +0200] rev 2620
packaging: prepare version 6.4.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 20:13:13 +0200] rev 2619
readme: fix readme for future 6.4.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 19:48:24 +0200] rev 2618
test-compat: merge with mercurial-3.9
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 19:48:10 +0200] rev 2617
test-compat: merge with mercurial-4.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 19:47:35 +0200] rev 2616
test-compat: merge with mercurial-4.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 19:27:36 +0200] rev 2615
compat-test: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 19:37:13 +0200] rev 2614
test-compat: fix previous merge
The merge was a bit too heavy handed in dropping some part of the test.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 19:22:38 +0200] rev 2613
merge with default
Integrate new development around obsfate.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 18:38:04 +0200] rev 2612
obsfate: by default only display the username if differ from the current one
This will will keep the output simple in the simple case.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 18:03:32 +0200] rev 2611
obsfate: display more data about direct prune markers
This does not handle all cases, but this should handle the most common ones.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 17:58:17 +0200] rev 2610
obsfate: split markers fetch from successor set annotation
This will help to improve support for pruned changesets.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 17:55:55 +0200] rev 2609
obsfate: mark successorsetallmarkers public
We are about to use it in another module.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 17:54:27 +0200] rev 2608
obsfate: mark 'preparesuccessorset' as public
It is used in another module so it is not really private.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 16:51:31 +0200] rev 2607
obsfate: use 'split' as verb when appropriate
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 16:50:11 +0200] rev 2606
obsfate: improve prune support in _successorsetverb
In the prune case, still have markers (at least the prune markers). If we want
to be able to return these markers we need the underlying function to support
it.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 12:37:03 +0200] rev 2605
obsfate: rename 'successorsset' to 'sset' in the loop
The old name make it too close to 'successorssets', and the shorter name is not
ambiguous in the context anyway.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 17:42:28 +0200] rev 2604
template: use hex node in the obsmarkers used in the obsfate template
This was pointed by Yuya and yuya is right.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 17:34:02 +0200] rev 2603
template: use hex successors in obsfate
This was spotted by Yuya.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 17:21:49 +0200] rev 2602
template: use hex-node in successors
AS pointed by yuya on the list, the raw data for the template should be hex and
not binary.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 17:16:26 +0200] rev 2601
template: update successors doc
I'm not very happy about it, but at lease there is a show description now
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 17:14:11 +0200] rev 2600
template: fix precursors documentation
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 17:11:20 +0200] rev 2599
template: used hex-node for the precursors underlying data
As pointed by yuya on mercurial-dev we should not use binary node here.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 11:55:40 +0200] rev 2598
compat-test: merge with mercurial-3.9
Boris Feld <boris.feld@octobus.net> [Fri, 16 Jun 2017 11:54:01 +0200] rev 2597
test-compat: merge with mercurial-4.0 branch
Minor merge conflict.
Boris Feld <boris.feld@octobus.net> [Fri, 16 Jun 2017 11:50:19 +0200] rev 2596
compat-test: merge with mercurial-4.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 16 Jun 2017 11:42:00 +0200] rev 2595
compat-test: merge with stable
* Blackbox format seems to have change when displaying config CLI options.
* As obsfate template is now only compatible with hg 4.2+, remove all references
to it in test files.
Boris Feld <boris.feld@octobus.net> [Fri, 16 Jun 2017 11:32:21 +0200] rev 2594
merge with stable
Boris Feld <boris.feld@octobus.net> [Fri, 16 Jun 2017 09:22:39 +0200] rev 2593
changelog: announce that obsfate is hg > 4.2 now
Update changelog to announce the fact that obsfate has been improved and is now
only compatible with mercurial version greater than 4.2.
Boris Feld <boris.feld@octobus.net> [Thu, 15 Jun 2017 20:40:07 +0200] rev 2592
compat: make obshistory._getdifflines compatible with mercurial 4.1
On Mercurial version 4.1 and lower, patch.diff seems to returns an empty list
when there is no change. Mercurial 4.2 returns None so we add a if for this
case.
Boris Feld <boris.feld@octobus.net> [Fri, 09 Jun 2017 00:52:54 +0100] rev 2591
obsfate: add a new obsfate template
The obsfate template display for each obsolete changeset a line summarizing
what changed between the changeset and its successors.
This dict is computed in obshistory._preparesuccessorset. It uses
obshistory.FORMATSSETSFUNCTIONS which is a list of function that
individually compute a part of each dict. You can override fields or add new
ones by adding your own function in this list.
The format of obsfate is computed in templatekw.obsfatedefaulttempl and can be
wrapped if necessary, the code is not quite extendable for the moment but can
be refactored later.
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