#pragma section-numbers 2 <> = Merging Graphlog in Core = <> == Done == 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. == To Do == === 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 ---- CategoryDeveloper