info-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Patch: Re: Output warning message when a file with a non-branch sticky


From: mmogilvi
Subject: Patch: Re: Output warning message when a file with a non-branch sticky
Date: Sun, 12 Aug 2001 17:37:45 -0600 (MDT)

I've created a possible patch to address this issue.
It can be downloaded from:

http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/cvsenhancements/
cvsEnhancements/patches/sticky-output.patch

It provides a good reference point for deciding what (if anything)
to put into official CVS.

===================

Description:

This patch implements support for having "cvs update" print
out information about sticky tags.

This patch works by only reporting sticky tags for files or directories
that are different from the sticky tag of the parent directory.

Some example output from "cvs update" is:

S . (/*) D 2001.08.12.04.04.58
cvs-tmp server: Updating .
cvs-tmp server: Updating tImp2
S tImport (/*) [HEAD]
cvs-tmp server: Updating tImport
S tImport/todo T 1.1
cvs-tmp server: Updating utils
cvs-tmp server: Updating utils/test2

So the output is of the form:
  "S filename description"
Where description includes sticky tag and date information, plus
the string " (/*)" if the filename is a directory.
" (/*)" indicate that all files in that directory
(and subdirectories) have the specified sticky options
unless otherwise specified.

   As currently configured, you can turn off the sticky reporting
with "cvs -q".

Other notes
1. This is *additional* output printed in all cases when the sticky
   options differ from the parent-directory sticky options.
   So a file might have 2 status lines, if it has been
   modified (for example) and has seperate sticky options.
      It might be better to avoid the duplication somehow.
   Other tweeks might be made to the output format as well.
   (Use T or D for the letter, and don't put it in the description?
   Do something else with directory lines?)

2. This patch includes neither test cases nor documentation updates,
   so it probably can't go in just yet.

3. A simpler strategy I considerred but decided not to implement was
   to simply report the sticky options any time the options
   differ from the parent directory.
      Perhaps someone would prefer this method?

===================

Legalese:
I grant permission to distribute this patch under
the terms of the GNU Public License.

===================
Unrelated notes:
1. As of today, 11 Aug 2001, the latest version of CVS in the repository
   has a broken pserver code.  If that latest repository version is
   connected to using cvs 1.11, everything works fine up until
   the point that the connection should be shut down.  It apparently
   goes into deadlock, with each end waiting for the other
   to finish shutting down the connection.
      [Note: I'm developing a small socket communications
   record/playback tool that may make it easier to do regression
   tests with cross-version remote protocol access.  Perhaps it
   will allow sanity.sh to catch these kinds of problems.]

2. I was going to try posting as an attachment at:
     http://ccvs.cvshome.org/issues/show_bug.cgi?id=16
   It wanted me to create an account (fine, I did that), but it
   also wanted some kind of special permission just to post
   a patch.  It seems kind of backwards to require someone to
   grant special permissions before anyone has even heard of me,
   to do something as nonthreatening as posting a patch...

===================
Matthew Ogilvie                address@hidden



reply via email to

[Prev in Thread] Current Thread [Next in Thread]