as Rich just reminded me - this should preferably be scriptable, so we
can run it just prior to putback.
cheers,
steve
Stephen Lau wrote:
I've updated the SCMMigrationTasks page on the genunix wiki. The
'implement keywords' task has now become 'strip SCCS keywords from ON'.
That should be a fun putback for someone to do ;-)
cheers,
steve
Stephen Lau wrote:
Just to poke this thread some more, the overwhelming consensus I've
seen has been to:
- Stop using keywords for module versions
I'd like to just eliminate the use of keywords entirely, if this is
the case. There doesn't seem to be a use for them, other than the
misleading use of modinfo to determine a driver version. And it's
been sufficiently pointed out in this thread that that is a poor
decision given the other better alternatives.
Does anyone see a problem with dropping keywords in their entirety?
If people see the need for versioning beyond what is available via
'mcs -p', mdb's ::showrev, etc. - we could look into embedding
something about the build repository & changeset tip into an ELF
section somewhere, but this may require modifications to modinfo/what
to support that. (We could either create a new section and make
wsdiff skip it, or add to .comment).
cheers,
steve
* For those interested, I did write up a Mercurial keywords extension
- and it worked, but it brought the time to do a 'hg clone' up from
2m41s to 20m32s. Obviously this is undesirable :)
Stephen Lau wrote:
Sending this to opensolaris-code for additional feedback, thoughts...
Stephen Lau wrote:
We've had contentious discussion on this already [1], but we need to
get resolution on this to move forward on the SCM Migration.
Mike Kupfer & Danek noted that the following are currently in use:
%?% (not an SCCS keyword)
%D% current date (yy/mm/dd)
%E% date of newest delta (yy/mm/dd)
%G% date of newest delta (mm/dd/yy)
%H% current date (mm/dd/yy)
%I% SID (%R%.%L%.%B%.%S%)
%L% level (see %I%)
%M% module name
%N% (not an SCCS keyword)
%R% release (see %I%)
%T% current time (hh:mm:ss)
%U% time of newest delta (hh:mm:ss)
%W% shorthand for %Z%%M%\t%I%
%X% (not an SCCS keyword)
%Z% what(1) marker ("@(#)")
%e% (not an SCCS keyword)
%s% (not an SCCS keyword)
The options I've seen are:
1) Eliminate the use of keywords entirely
2) Eliminate the #ident %Z% keywords (which is the bulk of the
keyword usage in onnv), and port the remaining ones to a new format
3) Port all keywords to a new format
The most contentious issue seems to be the use of %I% in modules
such as drivers. (James & Alan: this is why I've cc'd you, since I
don't know who else would know people in PTS who might have an
opinion). The general consensus from the ON developers I've talked
to is that the use of %I% to identify module versions is.... poor.
That being said, PTS uses it - for better or for worse. One thought
that we had was to replace it with the the Mercurial
monotonically-increasing revision number (not the 12 character hex
hash). It gives the ever-increasing factor that people may expect,
but doesn't identify uniqueness (since the revision number is
relative to each repository). However, this is the same behaviour
as %I% - so perhaps it's okay.
My personal vote is to:
- Eliminate the #ident %Z% keywords (since the what(1) string is
replaced by the build, anyway).
- Replace %I% for module versions with the Hg revision number
Thoughts? Flames?
cheers,
steve
[1] http://www.opensolaris.org/jive/thread.jspa?messageID=39328
--
stephen lau // [EMAIL PROTECTED] | 650.786.0845 | http://whacked.net
opensolaris // solaris kernel development
_______________________________________________
opensolaris-code mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/opensolaris-code