Re: CVS corrupts binary files ...

2004-06-06 Thread Mark D. Baushke
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Adrian Constantin [EMAIL PROTECTED] writes:

 
  Doug Lee [EMAIL PROTECTED] writes:
  
   Is it a proven thing that CVS can corrupt a
   binary file if no merges are tried and no
   CR/LF boundary rules are broken?
  
  No.

   I got it.
   It will corrupt my files in the default
   configuration after instalation, until I tell
   it that .gif files are not text

Correct. The present incarnation of cvs does not
know that a particular file should be treated as a
'binary' just because the file name happens to
match the pattern that some folks use for
Graphical Interchange Format.

I suppose we could collect the cvswrappers provided
as a hint into the contrib directory...

If someone wanted to hack in an automagical
recognition system that could be enabled for
binary file types, I suppose we could consider
adding it.

However, care would need to be taken that files
that happened to be in I8N international character
sets were handled properly too...

  svn, monotone, gnu arch and others have all arisen
  more recently than cvs and try in various ways to
  address the legacy problems that cvs continues to
  have.
  
  
 I think there are some binary diff algorithms...
  
  Indeed. Consider svn which uses xdelta internally.
  
  To be fair, CvsNt also has ways of dealing better
  with binary formats than the cvshome version.
  There is a hope that we can move toward merging
  the feature sets between those two major varitions
  of cvs over time, but it will likely take a bit of
  time as no one is being funded full time to work
  on just cvs development.
 
   So I see there are many alternatives
   available, but cvs has not changed. 

No, cvs has changed a great deal. There was a time
when it had significant problems with binary data.
Now, once you tell it that it should treat it as
binary, it mostly does the right thing (as has
been mentioned, it probably should have the
ability to plug in a series of merge programs
other than diff3 to handle binary data better).

It is also true that cvs lacks a full time
advocate for change in this direction.

Most of the advocates of major changes have left
the cvs project to work on a redesign called
subversion.

The current cvs has many problems that are not
yet addressed:

  - renaming files

  - versioning directories

  - dealing with symbolic links

  - better branching models

  - alternatives to diff3 for non-text files or
structured text files (a la XML and HTML)
where diff3 does not work well.

  - better access control models

There are a lot of others as well, just look at
the TODO file in the top-of-tree ccvs/TODO file
some time.

   Looks like developers want to offer their new
   products and not to support the original cvs
   :( Very sad to find out about this This is so
   strange and such a bad thing ...

It is not clear to me that incremental improvement
to cvs will necessarily solve some of the major
perceived flaws.

I'd love to see more detailed plans on how to add
improvements to cvs in a controlled way that lets
everyone come along for the ride without lots of
flag days taking place. However, that requires
real work and commitment and a vision of what
problems need to be solved.


  The design itself does not needs litte
  changes. cvs
   
  design can perfectly acomodate binary
  sources. It just has to be done (or
  implemented).
  
  Should I look forward to seeing your patches to
  help out on the project? They would be looked at
  with favor by all of your fellow cvs users.
 
   Well I write PHP now. I think there's a long way 
   from web pages to a serious public application

Okay.

   I hope I'll study xdelta in the near future

It is an interesting topic.

-- Mark
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (FreeBSD)

iD8DBQFAwrgY3x41pRYZE/gRArvxAJ9GIKVZ+E5SRUSswFlE+tdtnZXsUwCdErq+
C7A9YQeEwaDmJ5AC3wQ+Gwc=
=zrsI
-END PGP SIGNATURE-


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


Re: CVS corrupts binary files ...

2004-06-06 Thread Spiro Trikaliotis
Hello,

* On Sat, Jun 05, 2004 at 08:38:15PM -0700 Gianni Mariani wrote:
*
 Peter Connolly wrote:
 
 Too dificult to set up, I think Shouldn't cvs have a list of binary
 file types preinstalled in the cvswrappers ?
 
 I agree, it should.
 
 I second that !  I did 3 years ago.
 
 http://www.mail-archive.com/[EMAIL PROTECTED]/msg09098.html

I tend to disagree: It should not!

Which extensions are binary files? Is .au a binary file? I know .au as
(Sun?) audio file, but I've also seen a project where .au had the
meaning of additional user or something like that, and was a text
file.

The same could be true for other extensions. What about .doc? .doc is
not necessarily a Word file, especially not on old project. So, my
conclusion is: Only the user is aware what type each file is. Checking
in a text file with -kb (from a Windows machine) is something which many
administrators do not like, either.

If you have so much fear about binary files, why don't you put * -kb
into your cvswrappers, and declare any text file explicitly? This way,
you cannot miss the binary files.

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://lists.gnu.org/mailman/listinfo/info-cvs


Re: reports

2004-06-06 Thread Alexander Taler

Hi, I think that Perl LibCVS (http://libcvs.cvshome.org) can help
you out with this.  Some Perl code would have to be written to
format the information the way that you want, but it provides
access to the stuff that you need.

I can help you with this code, I think that it might be more
broadly useful.  The released version on the site and CPAN is
getting a bit old, I'm going to make a new release soon, but the
HEAD version should pretty much do what you want.

Alex


 Ramanuj == Ramanuj Singh [EMAIL PROTECTED] writes:
  Ramanuj To: '[EMAIL PROTECTED]' [EMAIL PROTECTED]
  Ramanuj Subject: reports
  Ramanuj Date: Sat, 5 Jun 2004 15:33:24 +0100

  Ramanuj How cvsgraph/cvsweb extract tags and branches from repository. I
  Ramanuj have gone through their codes but I m harldly able to get some
  Ramanuj information about the extraction of tags and branches. Or give me a
  Ramanuj script which gives information about all the tags and branches along
  Ramanuj with the date of creation and name of author. This is really urgent
  Ramanuj as I m new in CVS and working as cvs administrator. Don't tell me
  Ramanuj about the history command as it generates reports only for the tags
  Ramanuj created with rtag command.

  Ramanuj Even CVSWeb also gives the graphical view of branch and tag. If u
  Ramanuj can help me in this scenario , I will be grateful to u. Have to
  Ramanuj generate this kind of report on urgent basis.

  Ramanuj I need the kind of report as history command generates for all
  Ramanuj tags. As I have mentioned earlier the history command is not of
  Ramanuj great help as generates report about the tags or branches created by
  Ramanuj rtag command. So the tags created by simple tag command are not
  Ramanuj mentioned in this repor

 

  Ramanuj I need to generate report from cvs reporsitory for a project which
  Ramanuj displays the fields as I mentioned before. Don't need to just look
  Ramanuj up in wincvs and get information. I have to generate report from cvs
  Ramanuj repository. Not have to manually see those information and pen it
  Ramanuj down. May be a script can do.  There are many projects in our
  Ramanuj repository and for each project looking at the graphical view and
  Ramanuj penning down the information is not the stuff we have to do. I have
  Ramanuj to submit the reports about the tags and branches on Monday. I m cvs
  Ramanuj newbee. So its really urgent.

  Ramanuj The format for the report which will do is as follows,

  Ramanuj Date Name of tag or branch Name of the author

  Ramanuj Right now have to generate report for the project of duration of
  Ramanuj three months from march to may, on weekly basis

  Ramanuj So may be now u get the thing wat I want.

 



  Ramanuj The information transmitted is intended only for the person or
  Ramanuj entity to whom it is addressed and may contain confidential and / or
  Ramanuj privileged Material. Any review, re-transmission, dissemination or
  Ramanuj other use of or taking of any action in reliance upon, this
  Ramanuj information by persons or entities other than the intended recipient
  Ramanuj is prohibited. If you received this in error, please contact the
  Ramanuj sender and delete the material from your computer. Thank you for
  Ramanuj your understanding  co-operation.


  Ramanuj html xmlns:o=urn:schemas-microsoft-com:office:office
  Ramanuj xmlns:w=urn:schemas-microsoft-com:office:word
  Ramanuj xmlns=http://www.w3.org/TR/REC-html40;

  Ramanuj head META HTTP-EQUIV=Content-Type CONTENT=text/html;
  Ramanuj charset=us-ascii


  Ramanuj meta name=Generator content=Microsoft Word 11 (filtered medium)
  Ramanuj style !--
  Ramanuj  /* Font Definitions */ @font-face
  Ramanuj  {font-family:Latha;
  Ramanuj  panose-1:2 0 4 0 0 0 0 0 0 0;}
  Ramanuj  /* Style Definitions */
  Ramanuj  p.MsoNormal, li.MsoNormal, div.MsoNormal
  Ramanuj  {margin:0in;
  Ramanuj margin-bottom:.0001pt;
  Ramanuj font-size:12.0pt;
  Ramanuj font-family:Times New Roman;}
  Ramanuj a:link, span.MsoHyperlink
  Ramanuj  {color:blue;
  Ramanuj text-decoration:underline;}
  Ramanuj a:visited, span.MsoHyperlinkFollowed
  Ramanuj  {color:purple;
  Ramanuj text-decoration:underline;}
  Ramanuj span.EmailStyle17
  Ramanuj  {mso-style-type:personal-compose;
  Ramanuj font-family:Arial;
  Ramanuj color:windowtext;}
  Ramanuj @page Section1
  Ramanuj  {size:8.5in 11.0in;
  Ramanuj margin:1.0in 1.25in 1.0in 1.25in;}
  Ramanuj div.Section1
  Ramanuj  {page:Section1;}
  --
  Ramanuj /style

  Ramanuj /head

  Ramanuj body lang=EN-US link=blue vlink=purple

  Ramanuj div class=Section1

  Ramanuj p class=MsoNormalfont size=2 face=Lathaspan
  Ramanuj style='font-size:10.0pt;
  Ramanuj font-family:Latha'How cvsgraph/cvsweb extract tags and branches
  Ramanuj from
  Ramanuj repository. I have gone through their codes but I m harldly able to
  Ramanuj get some information about the extraction of tags and branches. Or
  

Re: CVS corrupts binary files ...

2004-06-06 Thread Gianni Mariani
Spiro Trikaliotis wrote:
Hello,
 

Hi !
...
If you have so much fear about binary files, why don't you put * -kb
into your cvswrappers, and declare any text file explicitly? This way,
you cannot miss the binary files.
 

Actually, that was suggested 3 years ago as well.  It turns out to be a 
very good one.  However, while there are fewer standard file extensions 
that are text, many ad-hoc files (non-standard extensions) are almost 
allways text.  Hence, it's easier to predict binary extensions that it 
is text extensions !

A suggestion 3 years ago was to run the file command on newly added 
files to determine it's format.  That practice would solve your issue I 
presume.

While you may be right about .doc or .au files, in practice, I have 
found that this has worked remarkably well.  Over the course of 3 years, 
I have never had anyone complain about files that CVS broke.

Almost all binary files added to CVS are - compressed source distros, 
prebuilt binaries, images, sound samples and open/win32 office files.

Anyhow, it works for me, YMMV !


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


Re: CVS corrupts binary files ...

2004-06-06 Thread Gianni Mariani
Mark D. Baushke wrote:
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
Adrian Constantin [EMAIL PROTECTED] writes:
 

...
If someone wanted to hack in an automagical
recognition system that could be enabled for
binary file types, I suppose we could consider
adding it.
 

It already exists, it's called file !
$ file xx.cpp
xx.cpp: ASCII C++ program text
$ file dialog.gif
dialog.gif: GIF image data, version 89a, 28 x 28
it appears that it returns a line with text if the file is considered 
text.

I think that would be fairly trivial to add to cvs.
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: CVS corrupts binary files ...

2004-06-06 Thread Paul Sander
--- Forwarded mail from [EMAIL PROTECTED]

* On Sat, Jun 05, 2004 at 08:38:15PM -0700 Gianni Mariani wrote:
*
 Peter Connolly wrote:
 
 Too dificult to set up, I think Shouldn't cvs have a list of binary
 file types preinstalled in the cvswrappers ?
 
 I agree, it should.
 
 I second that !  I did 3 years ago.
 
 http://www.mail-archive.com/[EMAIL PROTECTED]/msg09098.html

I tend to disagree: It should not!

Which extensions are binary files? Is .au a binary file? I know .au as
(Sun?) audio file, but I've also seen a project where .au had the
meaning of additional user or something like that, and was a text
file.

The same could be true for other extensions. What about .doc? .doc is
not necessarily a Word file, especially not on old project. So, my
conclusion is: Only the user is aware what type each file is. Checking
in a text file with -kb (from a Windows machine) is something which many
administrators do not like, either.

If you have so much fear about binary files, why don't you put * -kb
into your cvswrappers, and declare any text file explicitly? This way,
you cannot miss the binary files.

It's true that a general purpose file type identifier is not possible,
it is possible to get arbitrarily close to 100% accuracy on a per-shop
basis.  Also, relying on file extensions alone is notoriously inaccurate.
A mechanism like the Unix file(1) command that examines a file's content
is much better.  And then the configuration of it really needs to be in
the CVS admin's face from the start.

--- End of forwarded message from [EMAIL PROTECTED]



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