Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 13 Jun 2001 22:40:03 -0700 (PDT)
From:      Joel Ray Holveck <joelh@gnu.org>
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: bin/7265: A warning flag is added to ln(1).
Message-ID:  <200106140540.f5E5e3g47838@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR bin/7265; it has been noted by GNATS.

From: Joel Ray Holveck <joelh@gnu.org>
To: Giorgos Keramidas <charon@labs.gr>
Cc: freebsd-gnats-submit@FreeBSD.org
Subject: Re: bin/7265: A warning flag is added to ln(1).
Date: 13 Jun 2001 22:33:22 -0700

 > I cant locate the thread that is referenced in the PR
 > in the -current archives.  This PR seems to be too old
 > and the change it suggests does not seem to interest
 > anyone, for such a long time.
 > Maybe its time we killed this beast...
 
 I think it should be applied, under the "better late than never" clause.
 
 My apologies on the reference, the thread was in -hackers; see
 http://docs.freebsd.org/mail/archive/1998/freebsd-hackers/19980705.freebsd-hackers.html
 and
 http://docs.freebsd.org/mail/archive/1998/freebsd-hackers/19980712.freebsd-hackers.html
 for the details, and note the typo in "Improvemnet" when you search.
 
 Or, I can briefly sum up what happened.
 
 Shigio Yamaguchi noticed that doing things like "cd /usr; ln -s
 src/sys /tmp; cd /tmp/sys" didn't work as a naive user may expect, or
 even an experienced user whose brain skipped a groove briefly.  He
 made a suggestion to add flags to ln which would cause it to do the
 expected thing-- one flag which would create a symlink to
 "/usr/src/sys" in that event, and another to create a "../usr/src/sys"
 symlink.
 
 rminnich replied that it may be simpler-- and possibly more
 effective-- just to issue a warning whenever such a symlink was made.
 Somebody replied that it would be against the Unix philosophy to do
 that, since Unix shouldn't keep you from doing what you said.  I
 replied that this wouldn't keep you from making the symlink; it'd just
 remind you in case you forgot that something may be amiss.
 
 Some people argued against the change, stating that it would most
 certainly break something.  (Quote: "As you are not able to prove for
 -all- cases that this change will not break things...")  Some people
 argued against the change, stating that it was against the Unix
 philosophy to issue warnings.  (Quote: "If dmr & ken had wanted
 warnings they would have added stdwarn [warning: that is a joke]") And
 some people argued against the change, since they simply misunderstood
 the effect, thinking that it would be a fatal error.  (Quote:
 "Besides, creating a link to a non existant directory is not cause for
 an error condition")
 
 Then, there were those who supported the change, because they believed
 it would be useful, and did not believe that the above arguments were
 valid.  (Quote: "Obviously this guy is on crack.")
 
 Now, I had some fairly strong opinions about the Unix UI at that time.
 (I still do, but I'm not as vocal about them.)  I myself argued for
 the change most vehemently.  To address the first point, I described
 the absurdity of the situation (My quote: "So, we've now got a script
 which relies on the stderr of another script, the latter of which
 makes symlinks to non-existent files, and the former of which will
 break if a line is added.  Have I got you right?").  I also cited
 previous changes which had (IMHO) greater potential to break things,
 but didn't.  Then, I challenged the list members to cite an example of
 something which would break, and offered a beer as bounty.
 
 To address the second point, I argued that the Unix philosophy was not
 to prevent stuff, but that warnings were okay; to back this up, I
 cited other staples which issued "superfluous" warnings (16 core
 programs, including cp, make, lex, and cdcontrol).
 
 I just now realized that I'm the one who seems to have proposed the
 "-w" flag, in a sentence in which I objected to it.  Nobody else
 objected to adding the "-w" flag (although Terry Lambert reserved the
 right to do so later, on the grounds that POSIX may someday define a
 -w flag).  It soon became clear that the entire issue was a religious
 war-- which I was helping to perpetuate-- and not worth the effort.
 In an effort to end it, I wrote a patch to implement the -w flag,
 submitted a pr, and sent out a message with the subject line "Re:
 Improvemnet of ln(1). (THE END OF IT!)" and went on with my life.
 
 I had expected the patch to be merged quickly, and figured I'd add an
 alias to my .bash_profile once it was.
 
 Today, I'm not sure whether I would hold the same position as I did
 before.  I definitely support the -w addition, though; I still think
 it's a good idea.  Seeing as how there were no objections (other than
 mine, and I'm the guy who later wrote the patch), I see no reason to
 refrain from applying the patch.
 
 Hope this helps,
 joelh
 
 -- 
 Joel Ray Holveck - joelh@gnu.org
    Fourth law of programming:
    Anything that can go wrong wi
 sendmail: segmentation violation - core dumped

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200106140540.f5E5e3g47838>