Differences between revisions 1 and 6 (spanning 5 versions)
Revision 1 as of 2012-02-28 14:07:33
Size: 200
Comment:
Revision 6 as of 2012-08-02 14:11:14
Size: 2574
Comment:
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
A brief description.
Line 9: Line 7:
== Work in Progress == == Done ==
Line 11: Line 9:
coming soon With these submitted patches, graphlog supports the same options as log command, and we can consider merging boths:

=== http://selenic.com/pipermail/mercurial-devel/2012-February/038269.html ===

[[http://selenic.com/pipermail/mercurial-devel/2012-February/038269.html]]

 * graphlog: implement --copies
 * graphlog: evaluate FILE/-I/-X filesets on the working dir
 * match: consider filesets as "anypats"
 * test-glog: rewrite more tests using testlog() function
 * graphlog: fix --removed
 * context: add followfirst arg to filectx and workingfilectx
 * graphlog: apply file filters --patch/--stat output

=== http://selenic.com/pipermail/mercurial-devel/2012-March/038869.html ===

[[http://selenic.com/pipermail/mercurial-devel/2012-March/038869.html]]

 * Improve --only-branch
 * Support old-style --rev

=== http://selenic.com/pipermail/mercurial-devel/2012-April/039148.html ===

[[http://selenic.com/pipermail/mercurial-devel/2012-April/039148.html]]

 * Refactor graphlog.revset() to return revisions
 * Fix --follow/--follow-first again
 * Fix --branch lookup
 * Fix calls in subdirectories
 * Fix performance regression related to the order of evaluation of changesets in revsets

=== Mercurial 2.3 ===

 * Implement --hidden. At this point, the revset version is feature complete and pass all tests.
 * Move graphlog code in core, add default support for log --graph, leave almost empty graphlog extension.
 * Support outgoing/incoming --graphlog by default.
Line 15: Line 48:
coming soon === log command ===

 1. Turn revset.match() into a generator. Otherwise the time to first byte with --limit queries is too large.
 1. Maybe invent something to handle multiple predicated like "--user foo --user bar" without scanning the changelog multiple times.
 1. Profit!

=== incoming/outgoing commands ===

 1. Decide what to do about --newest-first
 1. ? Look at hg._incoming()/_outgoing() (recurse in subrepos ?)

=== random improvements ===

 1. Improve the error message on --follow FILE --removed, [[http://mercurial.selenic.com/bts/issue2139|issue2139]]
 1. Document that "hg log 'set:added()'" is not the same than "hg log -r 'file("set:added()")'"
 1. Mention filesets in "hg help patterns" before the last line
 1. Display renames correctly with "hg log --follow file", see the second part of this [[http://selenic.com/pipermail/mercurial-devel/2012-February/038275.html|changelog]] for details

Merging Graphlog in Core

1. Done

With these submitted patches, graphlog supports the same options as log command, and we can consider merging boths:

1.1. http://selenic.com/pipermail/mercurial-devel/2012-February/038269.html

http://selenic.com/pipermail/mercurial-devel/2012-February/038269.html

  • graphlog: implement --copies
  • graphlog: evaluate FILE/-I/-X filesets on the working dir
  • match: consider filesets as "anypats"
  • test-glog: rewrite more tests using testlog() function
  • graphlog: fix --removed
  • context: add followfirst arg to filectx and workingfilectx
  • graphlog: apply file filters --patch/--stat output

1.2. http://selenic.com/pipermail/mercurial-devel/2012-March/038869.html

http://selenic.com/pipermail/mercurial-devel/2012-March/038869.html

  • Improve --only-branch
  • Support old-style --rev

1.3. http://selenic.com/pipermail/mercurial-devel/2012-April/039148.html

http://selenic.com/pipermail/mercurial-devel/2012-April/039148.html

  • Refactor graphlog.revset() to return revisions
  • Fix --follow/--follow-first again
  • Fix --branch lookup
  • Fix calls in subdirectories
  • Fix performance regression related to the order of evaluation of changesets in revsets

1.4. Mercurial 2.3

  • Implement --hidden. At this point, the revset version is feature complete and pass all tests.
  • Move graphlog code in core, add default support for log --graph, leave almost empty graphlog extension.
  • Support outgoing/incoming --graphlog by default.

2. To Do

2.1. log command

  1. Turn revset.match() into a generator. Otherwise the time to first byte with --limit queries is too large.
  2. Maybe invent something to handle multiple predicated like "--user foo --user bar" without scanning the changelog multiple times.
  3. Profit!

2.2. incoming/outgoing commands

  1. Decide what to do about --newest-first
  2. ? Look at hg._incoming()/_outgoing() (recurse in subrepos ?)

2.3. random improvements

  1. Improve the error message on --follow FILE --removed, issue2139

  2. Document that "hg log 'set:added()'" is not the same than "hg log -r 'file("set:added()")'"
  3. Mention filesets in "hg help patterns" before the last line
  4. Display renames correctly with "hg log --follow file", see the second part of this changelog for details


CategoryAudit

MergingGraphlogInCorePlan (last edited 2012-11-06 23:07:02 by abuehl)