<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="12" style="border: 1px #c9c399 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://git.reviewboard.kde.org/r/123963/">https://git.reviewboard.kde.org/r/123963/</a>
     </td>
    </tr>
   </table>
   <br />










<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On Lipiec 6th, 2015, 4:33 po południu CEST, <b>Milian Wolff</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  


<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
 <thead>
  <tr>
   <th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
    <a href="https://git.reviewboard.kde.org/r/123963/diff/9/?file=382502#file382502line44" style="color: black; font-weight: bold; text-decoration: underline;">refactoring/renamevardeclrefactoring.cpp</a>
    <span style="font-weight: normal;">

     (Diff revision 9)

    </span>
   </th>
  </tr>
 </thead>



 
 

 <tbody>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
    <th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">44</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="k">class</span> <span class="nc">Renamer</span> <span class="o">:</span> <span class="k">public</span> <span class="n">MatchFinder</span><span class="o">::</span><span class="n">MatchCallback</span></pre></td>
  </tr>

 </tbody>

</table>

  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">this change is already part of https://git.reviewboard.kde.org/r/124200/ no? you are really messing up the diffs here, and always just paste one huge diff of everything. that does not help at all. Do you know how to rebase changes locally? I'd assume you'd have a local branch where you have one commit per review you post. Then you create one diff per commit and then show these for review. My nitpicks should then be squashed into the commits and the diff reuploaded...</p></pre>
 </blockquote>



 <p>On Lipiec 6th, 2015, 6:55 po południu CEST, <b>Maciej Poleski</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">How rebasing can help this? The problem is I have two commits:</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">B
A</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I make review for A, then for B (rbtool creates diff with all local changes, if i create patch myself then review board rejects diff).</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Then we have some fixes for A (from review). I commit new revision.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">C (fixes for A)
B
A</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">When I update review with new fixes, then changes from B are also pulled in. What is more if I push, also B will land on repo.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">How to handle this problem?</p></pre>
 </blockquote>





 <p>On Lipiec 6th, 2015, 7:25 po południu CEST, <b>Milian Wolff</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">you rebase interactively, then reorder the commits such that C follows A directly, then squash it into A, giving just A, B.</p></pre>
 </blockquote>





 <p>On Lipiec 6th, 2015, 8:27 po południu CEST, <b>Maciej Poleski</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;"><code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">git rebase tooling -i</code> says <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">noop</code>. Not surprising - man says about branches and origins. I have one branch (tooling) with all commits. If I detach head to commit "on different branch" - I guess git will forget about detached head and lose history (or simply refuse to perform one of required steps)</p></pre>
 </blockquote>





 <p>On Lipiec 6th, 2015, 9:03 po południu CEST, <b>Maciej Poleski</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">stackoverflow helped, still don't know how to squash them, but history is modified in a way i expeced</p></pre>
 </blockquote>





 <p>On Lipiec 6th, 2015, 9:31 po południu CEST, <b>Milian Wolff</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">the following is untested, better do this in a separate branch:</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;"><div class="codehilite" style="background: #f8f8f8"><pre style="line-height: 125%">git checkout -b test-rebase
git rebase -i origin/master
# now in your editor, reorder the commits (you seem to have done that)
# then change the first column of a patch you want to squash from 'p' to 'f'
# the editor should at the bottom also give you a list of commands
</pre></div>
</p></pre>
 </blockquote>





 <p>On Lipiec 6th, 2015, 10:12 po południu CEST, <b>Maciej Poleski</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I'm working on separate branch (tooling). This branch detached from master at 30.05.2015. master was merged to this branch at 20.06.2015 (just before I made changes to ClangSupport). I squashed commits after this merge and before introduction of RefactoringManager. I have problems with squashing changes before merge. The merge itself is a problem. Do You have some advice for this?</p></pre>
 </blockquote>





 <p>On Lipiec 6th, 2015, 10:34 po południu CEST, <b>Milian Wolff</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I don't want you to waste too much time on it, but you could create a new branch (tracking master) and then cherry-pick your commits in there and drop the old branch then rename the new branch. In the future, you'd then rebase it on master. But that won't work nicely if you want to publish your branch, as you'd potentially rewrite history and that is not allowed on KDE git. So probably just ignore this stuff, and concentrate on your actual problem at hand: getting refactoring features in.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">In the future though, you could use git commit --amend and similar to keep the history clean.</p></pre>
 </blockquote>





 <p>On Lipiec 6th, 2015, 10:59 po południu CEST, <b>Maciej Poleski</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I'm getting these two errors:</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;"><div class="codehilite" style="background: #f8f8f8"><pre style="line-height: 125%">fatal<span style="color: #666666">:</span> Could not read from remote repository<span style="color: #666666">.</span>

Please make sure you have the correct access rights
and the repository exists<span style="color: #666666">.</span>
</pre></div>
</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">or
<code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">fatal: remote error: access denied or repository not exported: /kdev-clang</code></p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Each with probability 0.5 (i added my ssh key to KDE identity)</p></pre>
 </blockquote>





 <p>On Lipiec 8th, 2015, 10:37 po południu CEST, <b>Milian Wolff</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">do you still get that error? sounds like a temporary network issue. if you still have the issue - what does <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">git remote -v</code> say for you?</p></pre>
 </blockquote>







</blockquote>
<pre style="margin-left: 1em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Yes. Still the same.
My command is:
<code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">git push origin be8f7d168bf61397ff12a694be7e66f26567a497:refs/heads/tooling</code></p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">and result of <code style="text-rendering: inherit;color: #4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">git remote -v</code>:</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;"><div class="codehilite" style="background: #f8f8f8"><pre style="line-height: 125%">github  git@github.com:Maciej-Poleski/kdev-clang.git (fetch)
github  git@github.com:Maciej-Poleski/kdev-clang.git (push)
origin  git://anongit.kde.org/kdev-clang (fetch)
origin  git://anongit.kde.org/kdev-clang (push)
</pre></div>
</p></pre>
<br />




<p>- Maciej</p>


<br />
<p>On Lipiec 2nd, 2015, 11:43 po południu CEST, Maciej Poleski wrote:</p>








<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: 1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
 <tr>
  <td>

<div>Review request for KDevelop.</div>
<div>By Maciej Poleski.</div>


<p style="color: grey;"><i>Updated Lip 2, 2015, 11:43 po południu</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
kdev-clang
</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">First bits of refactorings.
Skeleton of interface for KDevelop.
Build system (really nasty, linked DSO has 18MiB).
CompilationDatabase for CMake projects and ClangTool (with cache, but without cache updates).
Interface is not frozen for now.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Currently building of refactorings is enabled only if Clang 3.6.x is found. In other case build system behaves exactly as current master.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Refactorings require some contextual informations about projects. I made draft of interface with should feature:
 - Stable ABI - dlopen (or equivalent) a DSO and if succeed (binary is still compatible with Clang libraries ABI), dlsym (or equivalent) some functions which are to provide all refactorings features
 - Prototypes (with some implementation) of functions constituting API between KDevelop and refactorings backend
 - It may be considered to use Qt plugin system to provide implementation of this (or equivalent) interface. This would be more expensive, but also more portable
 - In worst case this library (static version) can be used with additional driver to make stand-alone executable providing all refactorings features (but it would require additional marshaling and hamper cooperation with user (how to provide UI in such a case?))</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Handling dependencies between Clang/LLVM libraries is a nightmare. I extended FindClang.cmake to find much more libraries and used them to link with first pieces of my code. This is huge, requires additional libraries like zlib and even ordering of dependencies can cause linker errors.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Interface is not finished</p></pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Compiles on my Gentoo system. It makes sense to build this only on system with Clang 3.6.</p></pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>CMakeLists.txt <span style="color: grey">(875172a8407f4bd9faf330f032a280fa66c2b16f)</span></li>

 <li>clangsupport.h <span style="color: grey">(8ed1ec90bbbc41d7c7a94d926e0951c729a6194c)</span></li>

 <li>clangsupport.cpp <span style="color: grey">(e22c55426a2e839ec11cbe0b2fe1e13721b0583a)</span></li>

 <li>cmake/FindClang.cmake <span style="color: grey">(6c9bd6ef0242319122dcc7e6fd6cea8d9f0cbfbb)</span></li>

 <li>refactoring/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/documentcache.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/documentcache.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/interface.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/interface.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/kdevrefactorings.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/kdevrefactorings.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/kdevrefactorings_disabled.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/nooprefactoring.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/nooprefactoring.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/refactoring.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/refactoring.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/refactoringcontext.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/refactoringcontext.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/refactoringinfo.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/refactoringinfo.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/renamevardeclrefactoring.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/renamevardeclrefactoring.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/utils.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>refactoring/utils.cpp <span style="color: grey">(PRE-CREATION)</span></li>

</ul>

<p><a href="https://git.reviewboard.kde.org/r/123963/diff/" style="margin-left: 3em;">View Diff</a></p>






  </td>
 </tr>
</table>







  </div>
 </body>
</html>