May 01, 2004

BBEdit CVS tool problems

BBEdit doesn't seem to deal well with newer style password entries (see ~/.cvspass) and can yield some pretty strange error messages.

The problem is caused by newer versions of CVS which use a slightly different form for the password file entries. An example of an older entry in my .cvspass file:

:pserver:user@host:/some/cvs/path crypt-password

The is what a newer entry created using cvs 1.11.5 (installed using fink) looks like:

/1 :pserver:user@host:2401/some/cvs/path crypt-password

If attempting to use BBEdit with a new project setup using a newer version of CVS, you will probably see a CVS sandbox error dialog that looks something (or exactly) like the image below...

BBEdit sandbox error

The solution is to edit your ~/.cvspass file (with BBEdit of course) to remove the leading "/1" and CVS port number (2401). At this point, assuming everything else is setup properly, your normal command line CVS tools should still work, BBEdit should quit complaining and the CVS tools should function normally.

Update: I had several nice emails from BBEdit folks about my problem report. They had already documented the fix I came up with.

The problem in the end is the application environment setup (using ~/.MacOSX/environment.plist) by the OS when applications are launched. It seems reasonable to have this not be dynamic, but to have to log out to make it take effect is a giant pain in the arse. I think it would make sense to have an option somewhere so that instead of passing along environment variables from ~/.MacOSX/environment.plist the OS would just read my environment by following the cookie crumbs starting at ~/.profile like a normal shell process does.

Posted by Dave at May 1, 2004 10:45 AM
Comments