samba-bugs@samba.org
2006-Oct-09  22:07 UTC
DO NOT REPLY [Bug 4157] New: Add RCS keyword $Header$ to all files to support development
https://bugzilla.samba.org/show_bug.cgi?id=4157
           Summary: Add RCS keyword $Header$ to all files to support
                    development
           Product: rsync
           Version: 2.6.8
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: enhancement
          Priority: P3
         Component: core
        AssignedTo: wayned@samba.org
        ReportedBy: 14709c93@mailinator.com
         QAContact: rsync-qa@samba.org
Add RCS keyword $Header$ to all files to support development.
It would be great to have this added to _all_ the RCS/cvs controlled
files. Many sites/developers manage piles of files/patches, work to
bring them to the recent HEAD/release for submission and so on. Having
these strings present helps to identify the initial source rev of the
file and later on when distilling diffs it can be very useful.  It can
be hard at times to figure out what the initial source rev for a file
was if the file doesn't contain that info and the user adapting the
file/patch is not the author [who might erroneously be expected to
know/remember:-] said info.
# Before
cvs diff -u will show the checked out revnum in the diff header.
However if using raw files as the work base, without cvs, the file and
all subsequent edits are devoid of original version info.  There is no
reference against which to do a cvs diff -ur <rev> if cvs is later
adopted, etc. Especially if the history of the file is not known to
the user.
# Enhancement
Add this literal at some consistent place near the top of all the
files, escape it if needed with the normal conventions.
 Add either:  $Header$  or  $Id$
 Typical escapes:  # $Header$  ,  /* $Header$ */  ,  etc
Cvs commit, enjoy the benefits.
# After
Now it's easier to bring random files/patches in line with cvs.
$Header: /.../foo,v 1.1 2006/10/09 20:50:41 user Exp $
$Id: foo,v 1.1 2006/10/09 20:50:41 user Exp $
Full documentation for this is at:
 http://ximbiot.com/cvs/manual/cvs-1.11.22/cvs_12.html
This could probably be scripted as a one time commit.
find -E . -type f \! -regex '^.*/CVS/.*$' -print0 | xargs -0 ed ...
Thanks!
-- 
Configure bugmail: https://bugzilla.samba.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.
samba-bugs@samba.org
2006-Oct-10  00:39 UTC
DO NOT REPLY [Bug 4157] Add RCS keyword $Header$ to all files to support development
https://bugzilla.samba.org/show_bug.cgi?id=4157 ------- Comment #1 from 14709c93@mailinator.com 2006-10-09 19:38 MST ------- Just checked, all the files in HEAD are free from conflict with $Header$/$Id$ except for 9 files under zlib which are expansion blocked with cvs admin -ko/-kb in the rcs file. 11 more zlib files are blocked but there is no corresponding keyword in the HEAD file to block. ie: inffixed.h. So the block could be removed where not in conflct with the current or imported zlib. With imported sources, it can also be useful to not admin block expansion in RCS instead, preserve and disable by remove the $'s in the Header/Id line before import, then add the local $Header$/$Id$ which will expand as usual. Using export -kv will do this if the RCS of the import is available. Ref: cvs(1), co(1), ident(1). Note also the use of /usr/bin/ident against files having been compiled with this or similar code: static char *id="$Id$"; The ident syntax is also free except for the trival case of: ./patches/acls.diff:+ char *id = ""; Enjoy. -- Configure bugmail: https://bugzilla.samba.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug, or are watching the QA contact.
samba-bugs@samba.org
2006-Oct-11  00:10 UTC
DO NOT REPLY [Bug 4157] Add RCS keyword $Header$ to all files to support development
https://bugzilla.samba.org/show_bug.cgi?id=4157
wayned@samba.org changed:
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |WONTFIX
------- Comment #2 from wayned@samba.org  2006-10-10 19:09 MST -------
Sorry, I don't like magic strings inside source files.  In particular, I
don't
want a commit to cause a file to change.
-- 
Configure bugmail: https://bugzilla.samba.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.
samba-bugs@samba.org
2006-Oct-11  12:15 UTC
DO NOT REPLY [Bug 4157] Add RCS keyword $Header$ to all files to support development
https://bugzilla.samba.org/show_bug.cgi?id=4157 ------- Comment #3 from 14709c93@mailinator.com 2006-10-11 07:15 MST ------- Hmm, I'm confused. Not to contest but perhaps fill in more info. A checked out file can normally only be committed if indeed, by definition, the user has intentionally changed its contents on purpose. The revision number bump should be expected in that case and is only bumped for the files committed, not the whole repo. The magic is only magic to cvs and ignored by others when commented out in their usual syntax of C, sh, perl, etc. cvs diff knows not to print the Id which would otherwise litter diffs with superfluous chatter. It's mostly set and forget. The ident *char can be omitted if the trivial const added to compiled code would be untenable. Are other massive projects such as FreeBSD, NetBSD, OpenBSD, Xorg, XFree86, browsers, apps, etc that are currently using Id everywhere experience issues. How could user easily match a discovered source file/patch to its corresponding base revision to work from. Whatever works, food for thought, /user defers. -- Configure bugmail: https://bugzilla.samba.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug, or are watching the QA contact.
Seemingly Similar Threads
- DO NOT REPLY [Bug 5263] New: failure to report deleted files with link-dest
- dojo and prototype compatibility?
- DO NOT REPLY [Bug 5256] New: make -i format more consistent [*deleting]
- conflict between rJava and data.table
- DO NOT REPLY [Bug 5287] New: FreeBSD pre10 compilation warnings report