threads / bug / 34962

suspected bug(s) in git-cvsexportcommit.perl

Subject: suspected bug(s) in git-cvsexportcommit.perl

## tl;dr

2 messages between Sep 18, 2013 and Sep 22, 2013.

replies: 1people: 2as markdown or json

Loyall, David· Sep 18, 2013, 19:00 UTC · lore
Hello.
I don't believe that git-cvsexportcommit.perl is working properly.
First off, invocations of "git-apply" fail on my system.  "git apply" works.  (The aforementioned script uses the former.)
Second, please have a look at this output (specific strings have been replaced with 'foo')
hobbes@metalbaby:~/src/foo$ git cvsexportcommit -v fecc8b4bb3d91d204f4eb3ebd112f6cec6004819
Applying to CVS commit fecc8b4bb3d91d204f4eb3ebd112f6cec6004819 from parent 695a544fbdcf7e0614c35d1dab9a3eac0cc57b4c
Checking if patch will apply
cvs status: nothing known about `WebContent/WEB-INF/lib/commons-lang-2.6.jar'
cvs status: nothing known about `WebContent/WEB-INF/lib/commons-configuration-1.9.jar'
cvs status: nothing known about `JavaSource/foo/ConfigManager.java'
cvs status: nothing known about `JavaSource/config.xml'
Huh? Status 'Unknown' reported for unexpected file 'no file commons-lang-2.6.jar'
Huh? Status 'Unknown' reported for unexpected file 'no file commons-configuration-1.9.jar'
Huh? Status 'Unknown' reported for unexpected file 'no file ConfigManager.java'
Huh? Status 'Unknown' reported for unexpected file 'no file config.xml'
Applying
<stdin>:7: trailing whitespace.
<?xml version="1.0" encoding="UTF-8" ?>
<stdin>:8: trailing whitespace.
<config>
<stdin>:9: trailing whitespace.
                <masterthread>
<stdin>:10: trailing whitespace.
                                <queuemappings>
<stdin>:11: trailing whitespace.
                                                <mapping threadtype="foo" service="foo" action="foo_test" />
error: patch failed: JavaSource/foo/QueueMapping.java:67
error: JavaSource/foo/QueueMapping.java: patch does not apply
Context reduced to (2/2) to apply fragment at 43
cannot patch at /usr/lib/git-core/git-cvsexportcommit line 333.
hobbes@metalbaby:~/src/foo$ 
Even after I altered my copy of the script to invoke 'git apply' in two places, I still get the erroneous "unknown" lines.  My suspicion is that it has something to do with the $basename stuff, but, who am I kidding? I don't grok perl.
I haven't yet explored the error lines after "Applying".
So, what do I want?  I want somebody to test git-cvsexportcommit.perl.  If it passes tests, then I'd like help creating a test that it does fail. (Perhaps my workspace can help.  Perhaps it is as simple as the presence of a new file in a subdirectory.)

Cheers, thanks, --Dave

Robin Rosenberg· Sep 22, 2013, 21:26 UTC · re: Loyall, David · lore

Re: suspected bug(s) in git-cvsexportcommit.perl

----- Ursprungligt meddelande -----
Show 11 quoted lines
> Från: "David Loyall" <david.loyall@nebraska.gov>
> Till: git@vger.kernel.org
> Skickat: onsdag, 18 sep 2013 21:00:46
> Ämne: suspected bug(s) in git-cvsexportcommit.perl
> 
> Hello.
> 
> I don't believe that git-cvsexportcommit.perl is working properly.
> 
> First off, invocations of "git-apply" fail on my system.  "git apply" works.
>   (The aforementioned script uses the former.)
git-apply is only available from scripts invoked by the git wrapper. Same applies
to all the other git<dash>-scripts.
 
Show 38 quoted lines
> Second, please have a look at this output (specific strings have been
> replaced with 'foo')
> 
> hobbes@metalbaby:~/src/foo$ git cvsexportcommit -v
> fecc8b4bb3d91d204f4eb3ebd112f6cec6004819
> Applying to CVS commit fecc8b4bb3d91d204f4eb3ebd112f6cec6004819 from parent
> 695a544fbdcf7e0614c35d1dab9a3eac0cc57b4c
> Checking if patch will apply
> cvs status: nothing known about `WebContent/WEB-INF/lib/commons-lang-2.6.jar'
> cvs status: nothing known about
> `WebContent/WEB-INF/lib/commons-configuration-1.9.jar'
> cvs status: nothing known about `JavaSource/foo/ConfigManager.java'
> cvs status: nothing known about `JavaSource/config.xml'
> Huh? Status 'Unknown' reported for unexpected file 'no file
> commons-lang-2.6.jar'
> Huh? Status 'Unknown' reported for unexpected file 'no file
> commons-configuration-1.9.jar'
> Huh? Status 'Unknown' reported for unexpected file 'no file
> ConfigManager.java'
> Huh? Status 'Unknown' reported for unexpected file 'no file config.xml'
> Applying
> <stdin>:7: trailing whitespace.
> <?xml version="1.0" encoding="UTF-8" ?>
> <stdin>:8: trailing whitespace.
> <config>
> <stdin>:9: trailing whitespace.
>                 <masterthread>
> <stdin>:10: trailing whitespace.
>                                 <queuemappings>
> <stdin>:11: trailing whitespace.
>                                                 <mapping threadtype="foo"
>                                                 service="foo"
>                                                 action="foo_test" />
> error: patch failed: JavaSource/foo/QueueMapping.java:67
> error: JavaSource/foo/QueueMapping.java: patch does not apply
> Context reduced to (2/2) to apply fragment at 43
> cannot patch at /usr/lib/git-core/git-cvsexportcommit line 333.
> hobbes@metalbaby:~/src/foo$

Your CVS directory is not up to date or you are, in some other way, trying to export something that does not match the content of your CVS directory. Keep in mind that you cannot export any commit, it must be possible to apply the changes in the commit to the CVS checkout, much as patch(1) would.

The -u flag to cvsexportcommit will perform an update from CVS for you, unless you want to do it manually.

Show 6 quoted lines
> Even after I altered my copy of the script to invoke 'git apply' in two
> places, I still get the erroneous "unknown" lines.  My suspicion is that it
> has something to do with the $basename stuff, but, who am I kidding? I don't
> grok perl.
>
> I haven't yet explored the error lines after "Applying".

Same explanation as for the Unknown status. It's not that the status is not known. The status is "Uknown", as in "CVS does not know about the file".

> So, what do I want?  I want somebody to test git-cvsexportcommit.perl.  If it
> passes tests, then I'd like help creating a test that it does fail. (Perhaps
> my workspace can help.  Perhaps it is as simple as the presence of a new
> file in a subdirectory.)
-- robin

← back to recent threads