Hi all<br><br>I put the plug-in at:<br><br><a href="http://gitorious.org/perforce-plugin/perforce-plugin">http://gitorious.org/perforce-plugin/perforce-plugin</a> <br><br>For now it doesn't do much - except "edit", "revert" and show up in the plugin list <br>
<br>The usual warnings about not leaving children and kittens unattended with the plug-in applies.<br><br>Regards <br><br>Morten<br><br><div class="gmail_quote">2010/11/17 Morten Volden <span dir="ltr"><<a href="mailto:mvolden2@gmail.com">mvolden2@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><br><br><div class="gmail_quote">2010/11/16 Aleix Pol <span dir="ltr"><<a href="mailto:aleixpol@kde.org" target="_blank">aleixpol@kde.org</a>></span><div>
<div></div><div class="h5"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="gmail_quote"><div><div></div><div>On Mon, Nov 15, 2010 at 10:09 PM, Morten Volden <span dir="ltr"><<a href="mailto:mvolden2@gmail.com" target="_blank">mvolden2@gmail.com</a>></span> wrote:<br>
</div></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div><div></div><div>
Hi All<br><br>A little while ago I asked on this list about the status of a Perforce plug-in for Kdevelop4. Since no one replied I take it that development on such a plug-in is not going on at the moment. So I started writing a perforce plug-in.<br clear="all">
<br>My current status in short:<br>I have the plug-in loaded, and it will show in the context menu - So far so good.<br><br>The plugin overrides pure virtual functions in ICentralizedVersionControl and in IBasicVersionControl. E.g. for the edit function I do something like this:<br>
<br>KDevelop::VcsJob* perforceplugin::edit(const KUrl& localLocation)<br>{<br> QFileInfo fsObject(localLocation.toLocalFile());<br> QString filename(fsObject.fileName());<br> QDir path(fsObject.dir());<br> <br>
DVcsJob* job = new DVcsJob(path, this, KDevelop::OutputJob::Verbose);<br> if(job)<br> kDebug() << "After Creating job, the path is " << path.path() << "and the filename is " << filename << "... And the jobs dir is: " << job->directory().path();<br>
*job << "p4" << "edit" << filename;<br> return job;<br>}<br><br>When Trying to edit one of the files in my perforce testbed the kDebug gives me the following output:<br>
<br>perforceplugin::edit: After Creating job, the path is "/home/mvo/testbed/perforcetest" and the filename is "main.cpp" ... And the jobs dir is: "/home/mvo/testbed/perforcetest"<br><br>
Which leads me to believe the DVcsJob I am creating has the correct CWD (i.e. /home/mvo/testbed/perforcetest ). However, the command issued by the job fails for reasons that escape me (as can be seen in the screenshot below). <br>
<br><a href="http://imagebin.ca/view/89faihm.html" target="_blank">http://imagebin.ca/view/89faihm.html</a><br>
<br>The perforce server and port are specified in the file p4config.txt (p4 will look for its settings in a file of that name). <br><br>If I issue the same command in a kdevelop konsole, it works (see konsole window in screenshot below)<br>
<br><a href="http://imagebin.ca/view/G4zUSuW.html" target="_blank">http://imagebin.ca/view/G4zUSuW.html</a><br><br>Can anyone shed some light on what the difference is between the command in the DvcsJob and the command issued in the terminal? <br>
<br> Thanks.<br><font color="#888888"><br>
Morten <br>
</font><br></div></div><div>--<br>
KDevelop-devel mailing list<br>
<a href="mailto:KDevelop-devel@kdevelop.org" target="_blank">KDevelop-devel@kdevelop.org</a><br>
<a href="https://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel" target="_blank">https://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel</a><br>
<br></div></blockquote></div><br><div>To me it sounds like p4 requires some env variable to be defined that isn't. I don't know anything about perforce though, so I can't help you with that. I can help you with the debugging if you tell me what you need.</div>
</blockquote></div></div><div><br>Indeed, I believe it is the P4CONFIG variable. It is used to tell Perforce clients the filename of a configuration file. I assumed the perforce client would look for "p4config.txt" if P4CONFIG wasn't set - however that does not seem to be the case.<br>
<br>My HD decided to go to lunch a couple of times yesterday so I did not get round to putting the source on gitorious - Hopefully I will get it done within this week. <br><br>Thanks<br><font color="#888888"><br>/Morten<br>
<br> </font></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="im">
<div><br></div><div>I agree it looks like the same command, it's really weird that it doesn't return the same.</div><div><br></div><font color="#888888"><div>Aleix</div>
</font><br></div><div class="im">--<br>
KDevelop-devel mailing list<br>
<a href="mailto:KDevelop-devel@kdevelop.org" target="_blank">KDevelop-devel@kdevelop.org</a><br>
<a href="https://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel" target="_blank">https://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel</a><br>
<br></div></blockquote></div><br>
</blockquote></div><br><br clear="all"><br>-- <br>- When the split is pulled, mr. Grenade is no longer our friend<br>