<html>
<body>
<div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
<table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
<tr>
<td>
This is an automatically generated e-mail. To reply, visit:
<a href="https://git.reviewboard.kde.org/r/115232/">https://git.reviewboard.kde.org/r/115232/</a>
</td>
</tr>
</table>
<br />
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<p style="margin-top: 0;">On January 22nd, 2014, 9:58 p.m. UTC, <b>Aleix Pol Gonzalez</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;">Still, I think that this check should be delayed, there's no reason to have it happening that early in the plugin execution. Also it shouldn't be blocking the execution (that is, drop waitForFinished calls).
What about calling a "GitPlugins::errorsFound()" instead? this way it wouldn't be blocking. I don't know if anybody is expecting to edit this from KDevelop.</pre>
</blockquote>
<p>On January 23rd, 2014, 8:50 a.m. UTC, <b>Mikhail Krutov</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;">>I don't know if anybody is expecting to edit this from KDevelop.
I didn't find a way to get the user email from within KDE code; especially if user does not have kmail/kdepim set up; thus I made an editable input-boxes.
Without the editing; should git be initialized to some sane default (like KUser::loginName() + @ "domain_name")?
</pre>
</blockquote>
<p>On January 23rd, 2014, 10:02 a.m. UTC, <b>Andreas Pakulat</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;">Maybe it should rather be investigated why initializing a repository through kdevelop and creating an initial commit does not use the users login and username as configured on the system? Standalone git does exactly what you propose if you do
git init
touch foo
git add foo
git commit -m "Initial Commit"
in a terminal. So there has to be some reason why the same sequence (I'm assuming its roughly the same) fails in KDevelop and by fixing that you're avoiding all the discussion around when to ask, what defaults to take etc. and simply leave it to git. That also means there's not going to be any confusion by users that occasionally use git from commandline and wonder why kdevelop proposes different values for these.</pre>
</blockquote>
<p>On January 23rd, 2014, 10:39 a.m. UTC, <b>Mikhail Krutov</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;">Actually, not 100% true:
git may fail to detect user.email if system domain is not validated:
fatal: unable to auto-detect email address (got 'neko@nekobox.(none)')
KDevelop is able to create project without user.name configuration (checked it just now, sorry, should've earlier :)) and with valid user.email configuration; but fails in situation where git is unable to detect email properly (as stated above).
This happens because, when creating project from template & using git, not only git init happens (which passes in any circumstances), but also
$git add <templatefiles>
$git commit -m "initial"
which fails.
This is not a problem in case of create new project operation (user gets detailed error message & kdialog with error), but that is a problem in case of git commit, which fails silently from KDevelop when user does not have his git configured (for ex.: newly installed system, cloned git repo, kdevelop, no ~/.gitconfig, git unable to detect user.email).
If this should be handled by git, I see that there should be a checker before git commit (probably before other actions too) that would validate git configuration/configuration autodetect & will call gitPlugins::errorsFound() in case that git is unable to commit due to some reason. (in fact, from what I see it would be better to check not the validness of git config, cause that may change, but rather for stderr of git process to find if git finds something undesirable/wrong (e.g. print stderr into log window of kdevelop).
Would that be OK?
</pre>
</blockquote>
</blockquote>
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">More exact info on lack of error msg:
That happens if user has Build(or other) tab active. In this case, Version Control tab is not brought to focus.
If no tab is active when trying to commit, Version Control tab is opened & it is displaying needed info already.</pre>
<br />
<p>- Mikhail</p>
<br />
<p>On January 22nd, 2014, 9:51 p.m. UTC, Mikhail Krutov wrote:</p>
<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('https://git.reviewboard.kde.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
<tr>
<td>
<div>Review request for KDevelop.</div>
<div>By Mikhail Krutov.</div>
<p style="color: grey;"><i>Updated Jan. 22, 2014, 9:51 p.m.</i></p>
<div style="margin-top: 1.5em;">
<b style="color: #575012; font-size: 10pt;">Repository: </b>
kdevplatform
</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;">https://bugs.kde.org/show_bug.cgi?id=327931
When user did not setup git config user.email && user.name, get current KUser.fullName & prompt user to enter his email.
</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;">Install kdevgit.so plugin, then run KDevelop with empty ~/.gitconfig & with valid ~/.gitconfig
This patch has an issue that KDialog is not an active window on KDevelop start (e.g. KDevelop takes WM focus).</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>plugins/git/gitplugin.h <span style="color: grey">(0d50dbe)</span></li>
<li>plugins/git/gitplugin.cpp <span style="color: grey">(abd7e7f)</span></li>
</ul>
<p><a href="https://git.reviewboard.kde.org/r/115232/diff/" style="margin-left: 3em;">View Diff</a></p>
</td>
</tr>
</table>
</div>
</body>
</html>