cscvs doesn't support :ext: CVS repos

Bug #112327 reported by Michael Hudson-Doyle
6
Affects Status Importance Assigned to Milestone
Launchpad CSCVS
Fix Released
High
Paul Hummer

Bug Description

CSCVS doesn't support importing from CVS repositories that use :ext: in $CVSROOT.

Apparently it used to, and cjwatson gave us a patch that allows it to again, which I'll attach in a moment.

Related branches

Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :
Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

Unfortunately the patch is against a pretty old cscvs (2006-06-01), and doesn't work any more (still applies though!).

The main changes are:

1) cscvs uses subprocess now, not gnarly. Probably trivial to fix.

2) support for 'cvs version' has gone away, so the test fails because CVS.Repository doesn't have a version() method any more. As this just seems to be a "something works" sort of test, just changing it to test rlog or something should suffice.

Do you have time to work on this? If not, I'm sure we can get it done.

In addition, the test depends on openssh-server being installed, which it wasn't on my machine. You could probably avoid the dependency by using paramiko, but that might be a bit more involved a change.

Revision history for this message
Colin Watson (cjwatson) wrote :

I wrote my patch against what appeared to be in rocketfuel (sftp://chinstrap.ubuntu.com/home/warthogs/archives/rocketfuel/cscvs/1.0/devel/ - what /srv/launchpad.net/codelines/current/sourcecode/cscvs/ on mawson points to). Could you direct me to the current source, if this isn't it? I'd be happy to update my changes to that.

I think the openssh-server dependency is fair, really (the test becomes even more artificial otherwise), but perhaps it would be reasonable to skip the test if sshd isn't available?

Revision history for this message
David Allouche (ddaa) wrote :

The devel code is no longer on chinstrap, but on devpad now. The cscvs code is also published there: https://code.launchpad.net/~launchpad/launchpad-cscvs/rocketfuel

Changed in launchpad-cscvs:
importance: Undecided → High
status: Unconfirmed → Confirmed
Revision history for this message
James Henstridge (jamesh) wrote :

Rather than depending on sshd, it might be better to have a simple script that behaves as so:
 * logs its arguments to a known location (perhaps defined by an environment variable)
 * exec's "cvs pserver"

Now for the :ext: tests, just set $CVS_RSH to this script. We can then verify that the expected arguments got passed to the script (showing that cscvs holds up its end of the bargain in running ssh), and that the repository could be accessed (showing that cscvs can successfully talk with the pserver subprocess). What do you think?

Revision history for this message
Colin Watson (cjwatson) wrote :

Sorry for the year's delay in sorting this out! Here's an updated patch that includes all the feedback people have given so far. I adopted James' suggestion for avoiding the openssh-server dependency.

Paul Hummer (rockstar)
Changed in launchpad-cscvs:
assignee: nobody → rockstar
Paul Hummer (rockstar)
Changed in launchpad-cscvs:
status: Confirmed → Fix Committed
Revision history for this message
David Allouche (ddaa) wrote :

And four months later, the patch was applied and there was much rejoicing among the crowd of red-haired maintainers of debian installer software!

Revision history for this message
Colin Watson (cjwatson) wrote :

Actually I wanted it for openssh, but yes ;-)

Paul Hummer (rockstar)
Changed in launchpad-cscvs:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related questions

Remote bug watches

Bug watches keep track of this bug in other bug trackers.