Re: [PATCH 00/11] More preparatory work for multiparent tree-walker

2014-02-13 Thread Kirill Smelkov
On Wed, Feb 12, 2014 at 09:25:51AM -0800, Junio C Hamano wrote:
 Junio C Hamano gits...@pobox.com writes:
 
  Kirill Smelkov k...@mns.spb.ru writes:
 
  Sorry for the confusion. Could you please do the following:
 
  Patches should be applied over to ks/tree-diff-walk
  (74aa4a18). Before applying the patches, please cherry-pick
 
  c90483d9(tree-diff: no need to manually verify that there is no
   mode change for a path)
 
  ef4f0928(tree-diff: no need to pass match to
   skip_uninteresting())
 
  into that branch, and drop them from ks/combine-diff - we'll have one
  branch reworking the diff tree-walker, and the other taking advantage of
  it for combine-diff.
 
  As long as that does not lose changes to tests and clean-ups, I'm
  fine with that direction.  For example, I do not know if you want to
  lose e3f62d12 (diffcore-order: export generic ordering interface,
  2014-01-20), which is part of the combine-diff topic.
 
 Ahh, sorry, I misread the drop as salvage these two and drop the
 rest.  The new series does apply cleanly on a commit in master..pu
 that has both ks/tree-diff-walk and ks/combine-diff, and the latter
 is not yet in 'next' so we are free to reorganize.
 
 Let me flip the latter topic around, also queue these updates and
 push the result out on 'pu'.
 
 Thanks.

Thank you. As we've managed to apply this to pu, I've send the final
speedup patches. Please review them as time permits.

Thanks beforehand,
Kirill
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 00/11] More preparatory work for multiparent tree-walker

2014-02-12 Thread Kirill Smelkov
On Tue, Feb 11, 2014 at 11:59:02AM -0800, Junio C Hamano wrote:
 Kirill Smelkov k...@mns.spb.ru writes:
 
  Sorry for the confusion. Could you please do the following:
 
  Patches should be applied over to ks/tree-diff-walk
  (74aa4a18). Before applying the patches, please cherry-pick
 
  c90483d9(tree-diff: no need to manually verify that there is no
   mode change for a path)
 
  ef4f0928(tree-diff: no need to pass match to
   skip_uninteresting())
 
  into that branch, and drop them from ks/combine-diff - we'll have one
  branch reworking the diff tree-walker, and the other taking advantage of
  it for combine-diff.
 
 As long as that does not lose changes to tests and clean-ups, I'm
 fine with that direction.  For example, I do not know if you want to
 lose e3f62d12 (diffcore-order: export generic ordering interface,
 2014-01-20), which is part of the combine-diff topic.

Sorry for the confusion again, and please don't worry: we are not going
to lose anything - my only plea here was to transfer two of the patches
to more appropriate topic.

That couple touches tree-diff.c - they were some initial cleanups I've
noticed while working on separate combine-diff tree-walker, which we
decided to drop instead of generalizing diff tree-walker to handle all
cases. Only the cleanups are still relevant and needed as a base for
what I've sent you here.

And as to e3f62d12 (diffcore-order: export generic ordering interface,
2014-01-20) and other patches on ks/diff-c-with-diff-order topic - they
stay as they are - we do not need to rework them as ks/combine-diff
builds on top of the topic and generalizing diff tree-walker is
orthogonal work.


So in short: could you please transform the two tree-diff patches from
ks/combine-diff to ks/tree-diff-walk, then apply sent-here patches to
ks/tree-diff-walk; thats all.


Thanks,
Kirill
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 00/11] More preparatory work for multiparent tree-walker

2014-02-12 Thread Junio C Hamano
Junio C Hamano gits...@pobox.com writes:

 Kirill Smelkov k...@mns.spb.ru writes:

 Sorry for the confusion. Could you please do the following:

 Patches should be applied over to ks/tree-diff-walk
 (74aa4a18). Before applying the patches, please cherry-pick

 c90483d9(tree-diff: no need to manually verify that there is no
  mode change for a path)

 ef4f0928(tree-diff: no need to pass match to
  skip_uninteresting())

 into that branch, and drop them from ks/combine-diff - we'll have one
 branch reworking the diff tree-walker, and the other taking advantage of
 it for combine-diff.

 As long as that does not lose changes to tests and clean-ups, I'm
 fine with that direction.  For example, I do not know if you want to
 lose e3f62d12 (diffcore-order: export generic ordering interface,
 2014-01-20), which is part of the combine-diff topic.

Ahh, sorry, I misread the drop as salvage these two and drop the
rest.  The new series does apply cleanly on a commit in master..pu
that has both ks/tree-diff-walk and ks/combine-diff, and the latter
is not yet in 'next' so we are free to reorganize.

Let me flip the latter topic around, also queue these updates and
push the result out on 'pu'.

Thanks.

--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 00/11] More preparatory work for multiparent tree-walker

2014-02-11 Thread Kirill Smelkov
On Mon, Feb 10, 2014 at 04:28:33PM -0800, Junio C Hamano wrote:
 Kirill Smelkov k...@mns.spb.ru writes:
 
  Here I'm preparing tree-diff.c to be ready for the new tree-walker, so that 
  the
  final change is tractable and looks good and non noisy. Some small speedups
  are gained along the way. The final bits are almost ready, but I don't want 
  to
  release them in a hurry.
 
 No worries.  We are not in a hurry to apply non-regression-fix
 changes during a pre-release feature freeze period anyway.

I see.


 This seems to somehow conflict with other topics and does not
 cleanly apply on top of your other tree-diff topic, by the way.

Sorry for the confusion. Could you please do the following:

Patches should be applied over to ks/tree-diff-walk
(74aa4a18). Before applying the patches, please cherry-pick

c90483d9(tree-diff: no need to manually verify that there is no
 mode change for a path)

ef4f0928(tree-diff: no need to pass match to
 skip_uninteresting())

into that branch, and drop them from ks/combine-diff - we'll have one
branch reworking the diff tree-walker, and the other taking advantage of
it for combine-diff.

Then apply sent-here patches, which, as I've verified this time, should
apply cleanly.

Thanks and sorry again,
Kirill
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 00/11] More preparatory work for multiparent tree-walker

2014-02-11 Thread Junio C Hamano
Kirill Smelkov k...@mns.spb.ru writes:

 Sorry for the confusion. Could you please do the following:

 Patches should be applied over to ks/tree-diff-walk
 (74aa4a18). Before applying the patches, please cherry-pick

 c90483d9(tree-diff: no need to manually verify that there is no
  mode change for a path)

 ef4f0928(tree-diff: no need to pass match to
  skip_uninteresting())

 into that branch, and drop them from ks/combine-diff - we'll have one
 branch reworking the diff tree-walker, and the other taking advantage of
 it for combine-diff.

As long as that does not lose changes to tests and clean-ups, I'm
fine with that direction.  For example, I do not know if you want to
lose e3f62d12 (diffcore-order: export generic ordering interface,
2014-01-20), which is part of the combine-diff topic.




--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 00/11] More preparatory work for multiparent tree-walker

2014-02-10 Thread Junio C Hamano
Kirill Smelkov k...@mns.spb.ru writes:

 Here I'm preparing tree-diff.c to be ready for the new tree-walker, so that 
 the
 final change is tractable and looks good and non noisy. Some small speedups
 are gained along the way. The final bits are almost ready, but I don't want to
 release them in a hurry.

No worries.  We are not in a hurry to apply non-regression-fix
changes during a pre-release feature freeze period anyway.

This seems to somehow conflict with other topics and does not
cleanly apply on top of your other tree-diff topic, by the way.


--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 00/11] More preparatory work for multiparent tree-walker

2014-02-07 Thread Kirill Smelkov
Here I'm preparing tree-diff.c to be ready for the new tree-walker, so that the
final change is tractable and looks good and non noisy. Some small speedups
are gained along the way. The final bits are almost ready, but I don't want to
release them in a hurry.

Please apply and thanks,
Kirill

Kirill Smelkov (11):
  tree-diff: show_tree() is not needed
  tree-diff: consolidate code for emitting diffs and recursion in one place
  tree-diff: don't assume compare_tree_entry() returns -1,0,1
  tree-diff: move all action-taking code out of compare_tree_entry()
  tree-diff: rename compare_tree_entry - tree_entry_pathcmp
  tree-diff: show_path prototype is not needed anymore
  tree-diff: simplify tree_entry_pathcmp
  tree-diff: remove special-case diff-emitting code for empty-tree cases
  tree-diff: rework diff_tree interface to be sha1 based
  tree-diff: no need to call full diff_tree_sha1 from show_path()
  tree-diff: reuse base str(buf) memory on sub-tree recursion

 diff.h  |   4 +-
 tree-diff.c | 270 
 2 files changed, 145 insertions(+), 129 deletions(-)

-- 
1.9.rc1.181.g641f458

--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html