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

Re: Technical Committee: decision on #119517?



>>"Anthony" == Anthony Towns <aj@azure.humbug.org.au> writes:

 Anthony> Drawing the line at the package level gives you a nice way
 Anthony> of thinking about our current arrangements: Depends: ensure
 Anthony> against complete failure whenever possible (contrib packages
 Anthony> and kernel modules being the notable exceptions), leaving a
 Anthony> trade-off between splitting packages or allowing for
 Anthony> degraded functionality which the maintainer gets to
 Anthony> consider. In the case of cardmgr and apt-preconfigure,
 Anthony> degraded behaviour was considered the lesser evil than
 Anthony> having an extra couple of trivial packages.


	There is also the matter of perception (quality of
 implementation is a subjective matter). The way it works is this: 
 If a prorgram does not work (and a link failure is as classic a
 definition of does not work as one can get), the program is
 broken. If the program is broken, the package is broken (perhaps
 partially broken, but broken it is). 

	Recommended and Suggested packages are supposed to be
 optional. Nt having optional packages installed ought not to cause
 programs to break.


 Anthony> What, exactly, is the difference between having a package
 Anthony> "foo" provide two binaries "foo" and "xfoo", the former of
 Anthony> which is what most people who use the package care about and
 Anthony> always works, and the latter of which only works if the
 Anthony> xlibs package is installed; and a package "bar" having a
 Anthony> single binary "bar" that has a "-x" mode that pops up a GUI
 Anthony> but dies with an error when the X libraries aren't
 Anthony> installed. How is the latter a "graceful degradation" but
 Anthony> the former not?

	The difference? Perception.

	Hmm. Consider this scenario: I am out in the field (client
 site, airport) with no connectivity. If an option -x does not work, I
 say, huh, lemme try it without that option, and I go on.

	Now, if foo is advertised as an alternative for xfoo, I can
 see why that is not a big deal (I'll consider the program broken, but
 the package is not in such a bad state): I'll use foo instead.
 However, if a program exists, that just does not work, and there is
 no advertised alternative, well, that is incredibly
 frustrating. Nothing I can do on the machine can make the program
 work. 

	The package would be deemed to be broken (read buggy) in
 either case, but yes, there is a difference, with an advertised
 alternative, or if the breakage occurs only on some options, the
 impact of the bug is less.

	A perception of quality is one of the most treasured
 attributes we have garnered, in the eyes of the public, random
 program breakage would tarnish that.

 Anthony> "Programs" is not a good division to make. "Packages"
 Anthony> is. "Features" is.  What's a "program" and what isn't is an
 Anthony> implementation detail, and little more.

	But people interact with programs, really, not packages. We
 had an invariant: set up a package right, and things work as
 advertised. Now, we say, install all possible optional dependency
 packages, and all that they recommend/suggest, and then maybe,
 programs you just installed may work.

	manoj
-- 
 The worst thing about some men is that when they are not drunk they
 are sober. William Butler Yeats
Manoj Srivastava   <srivasta@debian.org>  <http://www.debian.org/%7Esrivasta/>
1024R/C7261095 print CB D9 F4 12 68 07 E4 05  CC 2D 27 12 1D F5 E8 6E
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C


-- 
To UNSUBSCRIBE, email to debian-ctte-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org



Reply to: