Re: Windows with Dir/ and dir/

2004-06-21 Thread Spiro Trikaliotis
Hello,

I'm replying to an old mail (and answer) from me, because I took the
time to generate a skript which shows the behaviour I mentioned (and it
still happens, even with 1.11.17).

My first posting on this can be found on
http://lists.gnu.org/archive/html/info-cvs/2004-04/msg00201.html

My problem is that if I have a directory Dir/, and I rename it to the
name dir/, cvs has problems with this on a Windows box.


* On Mon, Apr 19, 2004 at 11:10:42AM -0400 Derek Robert Price wrote:
 
 Spiro Trikaliotis wrote:
 
 Anyway, if I do a checkout (again, with -P) from the Windows machine, I
 get the following files:
 
 module/Dir/1
 module/Dir/2
 
 but the files 1 and 2 have the contents of the files which are in
 module/dir/1 and module/dir/2!
[...] 
 You shouldn't have this problem if you upgrade your server to 1.11.15.

No, this does not fix this issue. The attached bash-skript uses an empty
module named testproj to show the issue. You can run it from a Linux
box to generate such a module (you have to answer y two times for the
release -d), and see what happens.

The following tests were all done using self-compiled plain-vanilla 
cvs 1.11.17 on a Linux box and a Windows box (client); the server was
always used remotely via ssh, and it was always located on the Linux
box.

If I checkout the testproj from the Linux box and want to release it
again, I get:

  [EMAIL PROTECTED]:~/6$ cvs co testproj
  cvs checkout: Updating testproj
  U testproj/bla
  cvs checkout: Updating testproj/Old
  cvs checkout: Updating testproj/old
  U testproj/old/testfile

  [EMAIL PROTECTED]:~/6$ ls -l testproj/
  insgesamt 12
  -rw-r--r--1 me me   9 21. Jun 15:36 bla
  drwxr-xr-x2 me me4096 21. Jun 15:51 CVS
  drwxr-xr-x3 me me4096 21. Jun 15:51 old
  [EMAIL PROTECTED]:~/6$ cvs release -d testproj
  You have [0] altered files in this repository.
  Are you sure you want to release (and delete) directory `testproj': y

If I do the same on a windows machine (full cygwin installation), I get:

  [EMAIL PROTECTED] ~/cvstest
  $ cvs co testproj
  cvs checkout: Updating testproj
  U testproj/bla
  cvs checkout: Updating testproj/Old
  cvs checkout: Updating testproj/old
  U testproj/old/testfile

  [EMAIL PROTECTED] ~/cvstest
  $ ls -l testproj/
  total 1
  drwxr-xr-x+   2 me None0 Jun 21 15:50 CVS
  drwxr-xr-x+   3 me None0 Jun 21 15:50 Old
  -rw-r--r--1 me None   10 Jun 21 15:36 bla

  [EMAIL PROTECTED] ~/cvstest
  $ cvs release -d testproj
  cvs server: WARNING: global `-l' option ignored.
  cvs update: Old/testfile is no longer in the repository
  You have [0] altered files in this repository.
  Are you sure you want to release (and delete) directory `testproj': y
  cvs release: no such directory: testproj


Have a look at the line cvs update: Old/testfile is no longer in the
repository. Furthermore, you will recognize that the Linux machine has
the (correct!) old/ directory, while the Windows box named it Old/
with an uppercase O.

If I edit testproj/Old/CVS/Repository and replace Old/ with old/, all
works as expected. So, obviously, cvs seems to get the traces to the
wrong directory.

Because of this, not only release does not work, but even a commit to
the files in these directories is not possible. In fact, I have to
manually edit the CVS/ files to get it to work from the windows box.

Regards,
   Spiro.

-- 
Spiro R. Trikaliotis
http://www.trikaliotis.net/
http://www.viceteam.org/
#! /bin/sh
cvs co testproj
cd testproj

cat  bla %
 junk...
%

cvs add bla

mkdir Old
cat  Old/testfile %
 just some junk
%

cvs add Old
cd Old
cvs add testfile
cd ..

cvs commit -m - 1st version, Old/
cvs tag v1

cd Old
mv testfile ..
cvs rm testfile
cd ..
cvs rm Old

cvs commit -m - 2nd version, after removing
cvs tag v2

cd ..
cvs release -d testproj

cvs co -P testproj
cd testproj/

mkdir old/
cvs add old
cd old/

cat  testfile %
 just some junk
%

cvs add testfile

cd ..

cvs commit -m - 3rd version, with old/
cvs tag v3

cd ..
cvs release -d testproj
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Windows with Dir/ and dir/

2004-04-27 Thread Spiro Trikaliotis
Hello Derek,

* On Mon, Apr 26, 2004 at 04:37:40PM -0400 Derek Robert Price wrote:
 
 This is probably a long shot, but when you are definately checking out
 a clean sandbox into an empty directory with one of these
 freshly-compiled CVS's, do you see all conflicts on the next execution
 of cvs update with the fresh CVS, or only cvs release?

Doing a cvs update with 1.11.15 on server and client, this problem
persists.

Anyway, I found out something very weird:

I just set up ssh-agent, so I don't have to input my passphrase over and
over again. If I use that one, the problem does not occur, even if I do
*not* ssh-add the key!

Do you want to see an example?

[... no ssh-agent is running ...]

$ cvs co vice
$ cd vice
$ cvs update
[... error occurs...]
$ cd ..
$ cvs release -d vice
[... error occurs ...]

$ ssh-agent  /tmp/sshagent.test

$ cvs co vice
$ cd vice
$ cvs update
[... error occurs...]
$ cd ..
$ cvs release -d vice
[... error occurs ...]


$ . /tmp/sshagent.test

$ cvs co vice
$ cd vice
$ cvs update
[NO error!]
$ cd ..
$ cvs release -d vice
[NO error!]


Now, that's weird, isn't it?

Spiro.

-- 
Spiro R. Trikaliotis I'm subscribed to the mailing lists I'm posting,
http://www.trikaliotis.net/  so please refrain from Cc:ing me. Thank you.


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs


Re: Windows with Dir/ and dir/

2004-04-26 Thread Derek Robert Price
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Spiro Trikaliotis wrote:

I recompiled CVS two times, once on a cygwin with DOS line endings, once
on a cygwin with Unix line endings. With every version, I checked out
the module and tried to release it again.

In both cases, the result remained, so this does not seem to be the
cause.


This is probably a long shot, but when you are definately checking out
a clean sandbox into an empty directory with one of these
freshly-compiled CVS's, do you see all conflicts on the next execution
of cvs update with the fresh CVS, or only cvs release?

Derek

- --
*8^)

Email: [EMAIL PROTECTED]

Get CVS support at http://ximbiot.com!
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFAjXMULD1OTBfyMaQRAprcAJ9wNN3eumbDHLsopPd1C/L7DesV/wCfWJe1
vEV7Xb/CrDjlhp6wOflntE8=
=AwSn
-END PGP SIGNATURE-



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs


Re: Windows with Dir/ and dir/

2004-04-24 Thread Spiro Trikaliotis
Hello,

* On Tue, Apr 20, 2004 at 11:22:33AM -0400 Derek Robert Price wrote:

 Spiro Trikaliotis wrote:

 the corrected output is: cvs update: cannot open directory
 /var/lib/cvs/cbm/viceCR: No such file or directoryNL[...]
 where CR and NL are the respective characters.

 This can happen if you try to make the Cygwin CVS use a workspace
 which was created or used by a different Windows CVS (commandline,
 WinCVS, whatever...).  They leave CRs on the end of lines in CVS/*
 files (in this case probably CVS/Repository) and the Cygwin CVS,
 looking for UNIX EOLs, treats them as part of the directory/file name,
 sends them to the server, then the server reports
 no-such-file-or-directory since it doesn't know about viceCR, only
 vice.

I recompiled CVS two times, once on a cygwin with DOS line endings, once
on a cygwin with Unix line endings. With every version, I checked out
the module and tried to release it again.

In both cases, the result remained, so this does not seem to be the
cause.

Best regards,
   Spiro.

-- 
Spiro R. Trikaliotis I'm subscribed to the mailing lists I'm posting,
http://www.trikaliotis.net/  so please refrain from Cc:ing me. Thank you.


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs


Re: Windows with Dir/ and dir/

2004-04-20 Thread Spiro Trikaliotis
Hello Todd,

thanks for your suggestions.

* On Mon, Apr 19, 2004 at 03:51:44PM -0500 Todd Denniston wrote:

  : No such file or directoryectory /var/lib/cvs/cbm/vice
  cvs update: skipping directory
  You have [0] altered files in this repository.
  Are you sure you want to release (and delete) directory `vice': y
  
  (this is a verbatim copy, the word directoryectory is there in the
  original output!)
 
 I am used to this kind of output coming if there is an embedded \r in
 the thing being printed.
 The way to actually see what is going on is to do (assuming cygwin has
 script):

No, cygwin does not have script (or at least not installed). Anyway, 
cvs release -d ... 21|tee out

works, too.

 or if you really want to be sure run `od -a logerrorfile.txt |less `.

the corrected output is:
cvs update: cannot open directory /var/lib/cvs/cbm/viceCR: No such file or 
directoryNL[...]

where CR and NL are the respective characters.

 after you see what is really coming out, things are usually clearer as
 to what went wrong.

Well, yes, to a limited extent. ;-)

 I assume you either wrote over the original bin/cvs you had or are in
 some other way making sure you are executing the new version?


Yes, I executed path-to-cvs/cvs directly (and did a cvs --version to
be sure).

Anyway, I found out this not to be optimal, as CVS seems to try to run
exactly path-to-cvs/cvs on the server, which cannot be found or, even
worse, might be something different (as in my case).

At least, my crash has gone after I put the new path into the PATH
environment variable.

Thanks,
   Spiro.

-- 
Spiro R. Trikaliotis
http://www.trikaliotis.net/


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs


Re: Windows with Dir/ and dir/

2004-04-20 Thread Todd Denniston
Spiro Trikaliotis wrote:
 
 Hello Todd,
 
 thanks for your suggestions.
 
 * On Mon, Apr 19, 2004 at 03:51:44PM -0500 Todd Denniston wrote:
 
SNIP
  I assume you either wrote over the original bin/cvs you had or are in
  some other way making sure you are executing the new version?
 
 Yes, I executed path-to-cvs/cvs directly (and did a cvs --version to
 be sure).
 
 Anyway, I found out this not to be optimal, as CVS seems to try to run
 exactly path-to-cvs/cvs on the server, which cannot be found or, even
 worse, might be something different (as in my case).
 
 At least, my crash has gone after I put the new path into the PATH
 environment variable.
You might want to undo that and set CVS_SERVER=path-to-cvs/cvs on the
client, ssh and rsh methods will use that to execute the correct server
version... makes it nice and easy to try new versions out.


-- 
Todd Denniston
Crane Division, Naval Surface Warfare Center (NSWC Crane) 
Harnessing the Power of Technology for the Warfighter


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs


Re: Windows with Dir/ and dir/

2004-04-20 Thread Derek Robert Price
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Spiro Trikaliotis wrote:

No, cygwin does not have script (or at least not installed). Anyway,
cvs release -d ... 21|tee out

works, too.

or if you really want to be sure run `od -a logerrorfile.txt |less `.


the corrected output is:
cvs update: cannot open directory /var/lib/cvs/cbm/viceCR: No such
file or directoryNL[...]

where CR and NL are the respective characters.


This can happen if you try to make the Cygwin CVS use a workspace
which was created or used by a different Windows CVS (commandline,
WinCVS, whatever...).  They leave CRs on the end of lines in CVS/*
files (in this case probably CVS/Repository) and the Cygwin CVS,
looking for UNIX EOLs, treats them as part of the directory/file name,
sends them to the server, then the server reports
no-such-file-or-directory since it doesn't know about viceCR, only
vice.

Derek

- --
*8^)

Email: [EMAIL PROTECTED]

Get CVS support at http://ximbiot.com!
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFAhUA4LD1OTBfyMaQRAq1iAKDZ58rTcgtwCAcXRSN77/s0rlV1vgCgkbzp
D8bKrtyJndkw/RqBE4MO2u4=
=TARP
-END PGP SIGNATURE-



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs


Re: Windows with Dir/ and dir/

2004-04-20 Thread Larry Jones
Derek Robert Price writes:
 
 This can happen if you try to make the Cygwin CVS use a workspace
 which was created or used by a different Windows CVS (commandline,
 WinCVS, whatever...).  They leave CRs on the end of lines in CVS/*
 files (in this case probably CVS/Repository) and the Cygwin CVS,
 looking for UNIX EOLs, treats them as part of the directory/file name,
 sends them to the server, then the server reports
 no-such-file-or-directory since it doesn't know about viceCR, only
 vice.

Note that this does not happen if you install Cygwin correctly (i.e.,
using Windows line endings rather than Unix line endings).

-Larry Jones

My dreams are getting way too literal. -- Calvin


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs


Re: Windows with Dir/ and dir/

2004-04-19 Thread Derek Robert Price
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Spiro Trikaliotis wrote:

Anyway, if I do a checkout (again, with -P) from the Windows machine, I
get the following files:

module/Dir/1
module/Dir/2

but the files 1 and 2 have the contents of the files which are in
module/dir/1 and module/dir/2!

I know and understand that Windows is case insensitive, but this
behaviour is very surprising to me. I would have expected that the
Windows (cygwin) version of CVS creates exactly the files with the case
that it used to check the files out, nothing else). Even the file
module/dir/CVS/Repository points to module/Dir (and not to module/dir
which I would have expected).


You shouldn't have this problem if you upgrade your server to 1.11.15.

Derek

- --
*8^)

Email: [EMAIL PROTECTED]

Get CVS support at http://ximbiot.com!
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFAg+vxLD1OTBfyMaQRAq1WAKCwrsXQHMdRtYUPiDAfVsR5Jr3mqwCfeMN/
nWb/TsI30IVsjzvqW11fALI=
=ahK8
-END PGP SIGNATURE-



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs


Re: Windows with Dir/ and dir/

2004-04-19 Thread Spiro Trikaliotis
Hello Derek,

* On Mon, Apr 19, 2004 at 11:10:42AM -0400 Derek Robert Price wrote:
 Even the file module/dir/CVS/Repository points to module/Dir (and not
 to module/dir which I would have expected).
 
 You shouldn't have this problem if you upgrade your server to 1.11.15.

I upgraded the server to 1.11.15, but the problem remains (and I get the
warning cvs server: WARNING: global `-l' option ignored. on cvs
release -d from the cygwin version, 1.11.6). I even tried to update the
client (cygwin) from 1.11.6 to 1.11.15, but on cvs co, the directory
structure is as before, and the cvs release does not work anymore:

: No such file or directoryectory /var/lib/cvs/cbm/vice
cvs update: skipping directory
You have [0] altered files in this repository.
Are you sure you want to release (and delete) directory `vice': y

(this is a verbatim copy, the word directoryectory is there in the
original output!)

I just did a ./configure  make install with a fresh gotten tarbal on
cygwin (I can send in my check.log after doing make check, if that
helps).

Is here anyone having a working 1.11.15 on cygwin?

BTW: The version of http://www.cvshome.org/dev/codewindow.html makes my
machine almost crash. It takes approx. half an hour to kill the cvs.exe
after it has been issued with a cvs release against a server. :-(

Best regards,
   Spiro.

-- 
Spiro R. Trikaliotis
http://www.trikaliotis.net/


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs


Windows with Dir/ and dir/

2004-04-18 Thread Spiro Trikaliotis
Hello (again),

I'm using cvs 1.11.1 (debian/stable) on the server, and cvs 1.11.1
(Debian/stable) and cvs 1.11.6 (cygwin) on the client side.  I use
access method ssh to access my remote repository.

I found a somehow confusing behaviour which I cannot understand.
Possibly, someone can help me around it. I checked the list archive, and
although there is much on the Windows case-insensitiveness, I did not
find my particular problem mentioned.


I have a repository in which a module contains the following files:

module/Dir/Attic/1
module/Dir/Attic/2
module/dir/1
module/dir/2

module/Dir itself is empty (except for the subdir Attic/)

As you can see, the two directories differ in the case only.

Everything from Dir/ has been moved to dir/ many revisions before, so
Dir/ has everything contained inside of it in the Attic, and both Dir/
and dir/ contain the same files.

If I checkout -P from the Linux machine, everything works fine and I get
the files module/dir/1 and module/dir/2.

Anyway, if I do a checkout (again, with -P) from the Windows machine, I
get the following files:

module/Dir/1
module/Dir/2

but the files 1 and 2 have the contents of the files which are in
module/dir/1 and module/dir/2!

I know and understand that Windows is case insensitive, but this
behaviour is very surprising to me. I would have expected that the
Windows (cygwin) version of CVS creates exactly the files with the case
that it used to check the files out, nothing else). Even the file
module/dir/CVS/Repository points to module/Dir (and not to module/dir
which I would have expected).

I thought -P would not created to obsolete Dir/ but directly the new
dir/. This does not seem to be the case. Does CVS generate a Dir/ and
not remove it until dir/ wants to be written, in which case dir/ would
use the old Dir/ on Windows? I thought at first, but as CVS/Repository
points to Dir/, I don't think this is the case.


I have not checked what happens if I commit anything in this case since
I don't want to havoc my repository. Anyway, if I do a cvs release -d, I
get the following message:

$ cvs release vice
[EMAIL PROTECTED]'s password:
[EMAIL PROTECTED]'s password:
cvs server: src/arch/os2/Snippets/Makefile.am is no longer in the repository
cvs server: src/arch/os2/Snippets/Makefile.in is no longer in the repository
[...]
You have [0] altered files in this repository.
Are you sure you want to release (and delete) directory `vice': yes
[EMAIL PROTECTED]'s password:
cvs release: no such directory: vice


(BTW: What's behind the last cvs release: no such directory?)

If you want to know why I have to input my password 3 times, see the
mail I just wrote before. ;-)

Best regards,
   Spiro.

-- 
Spiro R. Trikaliotis
http://www.trikaliotis.net/


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs