Bug#268697: dist-upgrade not explained in manpage

2005-04-20 Thread Branden Robinson
tag 268697 + patch
thanks

On Mon, Apr 18, 2005 at 08:07:30AM -0400, Daniel Burrows wrote:
   The main problem is that aptitude's dist-upgrade is not terribly well 
 defined (neither is apt-get's dist-upgrade, if it comes to that).  It 
 basically means try hard to upgrade stuff, even if you have to install new 
 packages or remove packages, but the decisions about how to resolve 
 dependency problems are made by apt's dependency resolver, which is fairly 
 deep black magic.
 
   Basically what happens is that everything is marked for upgrade, and then 
 apt is called in to fix any remaining problems.  apt is told to avoid 
 breaking holds and to preserve deletions.  It looks like it doesn't give 
 instructions to preserve currently-installed packages or to preserve 
 upgrades, but neither does apt's dist-upgrade (there's probably a reason for 
 that, but if I ever knew it I've forgotten it).  It's actually somewhat 
 obscure to me why they produce different results at all.
 
   So to sum up, the only way I can see to document it that doesn't get into 
 hairy technical details is dist-upgrade will try harder than upgrade to 
 upgrade all installed packages, installing or removing packages as 
 necessary.  aptitude's dist-upgrade has the additional feature that you can 
 specify extra package actions, like this:
 
   aptitude dist-upgrade pkg1+ pkg2- ...

Well, attached is my best effort at a patch, given the difficult situation.
:)

-- 
G. Branden Robinson|  The National Security Agency is
Debian GNU/Linux   |  working on the Fourth Amendment
[EMAIL PROTECTED] |  thing.
http://people.debian.org/~branden/ |  -- Phil Lago, Deputy XD, CIA
diff -urN aptitude-0.2.15.9.OFFICIAL/debian/changelog 
aptitude-0.2.15.9/debian/changelog
--- aptitude-0.2.15.9.OFFICIAL/debian/changelog 2005-04-19 23:40:18.366248220 
-0500
+++ aptitude-0.2.15.9/debian/changelog  2005-04-20 00:15:52.206638461 -0500
@@ -1,3 +1,13 @@
+aptitude (0.2.15.9-2.1) local; urgency=low
+
+  * Local version to implement manpage patch.
+
+  * doc/en/manpage.xml: Document dist-upgrade command, note its
+not-well-understood status, and advise apt-get refugees to use upgrade
+instead.  (Closes: #268697)
+
+ -- Branden Robinson [EMAIL PROTECTED]  Tue, 19 Apr 2005 23:41:35 -0500
+
 aptitude (0.2.15.9-2) unstable; urgency=low
 
   * Merge from upstream to svn HEAD (r2931):
diff -urN aptitude-0.2.15.9.OFFICIAL/doc/en/manpage.xml 
aptitude-0.2.15.9/doc/en/manpage.xml
--- aptitude-0.2.15.9.OFFICIAL/doc/en/manpage.xml   2004-12-03 
19:40:48.0 -0500
+++ aptitude-0.2.15.9/doc/en/manpage.xml2005-04-20 01:20:45.994701006 
-0500
@@ -269,11 +269,11 @@
   /varlistentry
 
   varlistentry
-   termliteralupgrade/literal/term
+   termliteralupgrade, dist-upgrade/literal/term
 
listitem
  para
-   Upgrades installed packages to their most recent
+   Upgrade installed packages to the most recent available
version.  Installed packages will not be removed
unless they are unused (see the section quotelink
linkend='secAutoInstall'Managing Automatically
@@ -287,6 +287,15 @@
these constraints, it will be kept at its current
version.
  /para
+
+ para
+   literaldist-upgrade/literal tries harder to upgrade
+   packages; applicationapt-get/application users accustomed
+   to its literaldist-upgrade/literal command will likely want
+   to use aptitude;'s literalupgrade/literal command instead;
+   see quotelink linkend='secManBugs'Bugs/link/quote
+   below.
+ /para
/listitem
   /varlistentry
 
@@ -768,6 +777,15 @@
 /variablelist
   /refsect1
 
+  refsect1 id='secManBugs'
+titleBugs/title
+
+paraliteraldist-upgrade/literal does not behave in a terribly
+well-defined fashion.  The decisions about how to resolve dependency
+problems are made by apt;'s problem resolver, which is fairly deep
+black magic./para
+  /refsect1
+
   refsect1
 titleSee Also/title
 


signature.asc
Description: Digital signature


Bug#268697: dist-upgrade not explained in manpage

2005-04-20 Thread Daniel Burrows
  Regarding the advice to avoid dist-upgrade...I was half-asleep when you 
brought that up, and I think I may have given bad advice as a result.  
dist-upgrade can cause problems, but if you don't use it from time to time 
you're guaranteed to end up with some stale packages (due to stuff that 
simply can't be upgraded without installing or removing packages).  I'll 
probably try a slightly different angle on this.  Any comments on the 
attached patch?

  Daniel

-- 
/--- Daniel Burrows [EMAIL PROTECTED] --\
| Put no trust in cryptic comments. |
\-- (if (not (understand-this)) (go-to http://www.schemers.org)) ---/
Index: doc/en/manpage.xml
===
--- doc/en/manpage.xml	(revision 3013)
+++ doc/en/manpage.xml	(working copy)
@@ -56,6 +56,7 @@
 	arg choice='plain'forget-new/arg
 	arg choice='plain'update/arg
 	arg choice='plain'upgrade/arg
+	arg choice='plain'dist-upgrade/arg
   /group
 /cmdsynopsis
 
@@ -291,6 +292,27 @@
   /varlistentry
 
   varlistentry
+	termliteraldist-upgrade/literal/term
+
+	listitem
+	  para
+	Upgrades installed packages to their most recent version,
+	removing or installing packages as necessary.  This
+	command is less conservative than
+	literalupgrade/literal and thus more likely to perform
+	unwanted actions.  Users are advised to either use
+	literalupgrade/literal instead or to carefully inspect
+	the list of packages to be installed and removed.
+	  /para
+
+	  para
+	See quotelink linkend='secManBugs'BUGS/link/quote
+	below.
+	  /para
+	/listitem
+  /varlistentry
+
+  varlistentry
 	termliteralforget-new/literal/term
 
 	listitem
@@ -768,6 +790,20 @@
 /variablelist
   /refsect1
 
+  refsect1 id='secManBugs'
+titleBugs/title
+
+paraliteraldist-upgrade/literal does not behave in a
+terribly well-defined or well-understood fashion.  The decisions
+about how to resolve dependency problems are made by apt;'s
+problem resolver, which is fairly deep black magic.  Furthermore,
+the problem resolver is not aware of aptitude;'s automatic
+removal of obsolete packages, which can lead it to choose truly
+terrible solutions to its problems (such as removing all of KDE to
+resolve a broken dependency in a single package).
+/para
+  /refsect1
+
   refsect1
 titleSee Also/title
 


pgp8VSQF3Cw2m.pgp
Description: PGP signature


Bug#268697: dist-upgrade not explained in manpage

2005-04-20 Thread Branden Robinson
On Wed, Apr 20, 2005 at 09:45:08AM -0400, Daniel Burrows wrote:
   Regarding the advice to avoid dist-upgrade...I was half-asleep when you 
 brought that up, and I think I may have given bad advice as a result.  
 dist-upgrade can cause problems, but if you don't use it from time to time 
 you're guaranteed to end up with some stale packages (due to stuff that 
 simply can't be upgraded without installing or removing packages).  I'll 
 probably try a slightly different angle on this.  Any comments on the 
 attached patch?

No, it looks fine to my, except that dist-upgrade was already in the
command synopsis (in alphabetical order).

Thank you!

-- 
G. Branden Robinson| Do not attempt to disprove the
Debian GNU/Linux   | four-colour theorem on your flag!
[EMAIL PROTECTED] | -- Josh Parsons
http://people.debian.org/~branden/ |


signature.asc
Description: Digital signature


Bug#268697: dist-upgrade not explained in manpage

2005-04-18 Thread Branden Robinson
Package: aptitude
Version: 0.2.15.9-2
Followup-For: Bug #268697

Can I beg and plead for this bug to be fixed, pleease?  :)

I'd be happy to help write a patch, except for the fact that I don't
actually understand precisely what dist-upgrade does.  I know only these
things:

* It doesn't work exactly like apt-get dist-upgrade.
* It will hold back packages that aptitude upgrade does not.

If you want to corner me in IRC some time and brain dump, I can try to come
up with a patch to the manpage.

Let me know what I can do to help.

-- System Information:
Debian Release: 3.1
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing')
Architecture: powerpc (ppc)
Kernel: Linux 2.6.9-powerpc-smp
Locale: LANG=C, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)

Versions of packages aptitude depends on:
ii  apt [libapt-pkg-libc6.3-5-3 0.5.28.6 Advanced front-end for dpkg
ii  libc6   2.3.2.ds1-21 GNU C Library: Shared libraries an
ii  libgcc1 1:3.4.3-12   GCC support library
ii  libncurses5 5.4-4Shared libraries for terminal hand
ii  libsigc++-1.2-5c102 1.2.5-4  type-safe Signal Framework for C++
ii  libstdc++5  1:3.3.5-12   The GNU Standard C++ Library v3

-- no debconf information


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#268697: dist-upgrade not explained in manpage

2005-04-18 Thread Daniel Burrows
On Monday 18 April 2005 03:21 am, Branden Robinson wrote:
 Can I beg and plead for this bug to be fixed, pleease?  :)

 I'd be happy to help write a patch, except for the fact that I don't
 actually understand precisely what dist-upgrade does.  I know only these
 things:

 * It doesn't work exactly like apt-get dist-upgrade.
 * It will hold back packages that aptitude upgrade does not.

 If you want to corner me in IRC some time and brain dump, I can try to come
 up with a patch to the manpage.

 Let me know what I can do to help.

  The main problem is that aptitude's dist-upgrade is not terribly well 
defined (neither is apt-get's dist-upgrade, if it comes to that).  It 
basically means try hard to upgrade stuff, even if you have to install new 
packages or remove packages, but the decisions about how to resolve 
dependency problems are made by apt's dependency resolver, which is fairly 
deep black magic.

  Basically what happens is that everything is marked for upgrade, and then 
apt is called in to fix any remaining problems.  apt is told to avoid 
breaking holds and to preserve deletions.  It looks like it doesn't give 
instructions to preserve currently-installed packages or to preserve 
upgrades, but neither does apt's dist-upgrade (there's probably a reason for 
that, but if I ever knew it I've forgotten it).  It's actually somewhat 
obscure to me why they produce different results at all.

  So to sum up, the only way I can see to document it that doesn't get into 
hairy technical details is dist-upgrade will try harder than upgrade to 
upgrade all installed packages, installing or removing packages as 
necessary.  aptitude's dist-upgrade has the additional feature that you can 
specify extra package actions, like this:

  aptitude dist-upgrade pkg1+ pkg2- ...

  Daniel

-- 
/--- Daniel Burrows [EMAIL PROTECTED] --\
|   That we should wish to cast him down and have no one in his place  |
|is not a thought that occurs to his mind. That we should wish to   |
|destroy the Ring itself has not yet entered into his darkest dream.   |
| -- Gandalf Grayhame   |
\ Evil Overlord, Inc: http://www.eviloverlord.com --/


pgpqTOBQVVkG7.pgp
Description: PGP signature