6
* [cmdline] Correctly calculate the indentation for multi-byte encoded strings
7
in command line "show" (Closes: #360202)
9
* [curses] Show intended action when downgrading (Closes: #516517)
11
In package view/info screen, it was not handling this action and not showing
12
anything in this case.
14
* Update internal state for upgrades/downgrades with target version after the
15
action is performed (Closes: #787658, #714429)
17
Thanks to David Kalnischkies and Julian Andres Klode from APT team for their
18
help, clues and patience. It took some serious effort to get to this fix,
19
which in the end is quite modest in terms of code changes.
21
Internal state was neither reset nor written to disk until other packages'
22
states changed, so aptitude marked the same action on the packages as
23
pending to be performed again and again (but the action had already been
24
taken, so there was no observable effect in terms of installations).
26
However, this meant that the packages that were downgraded to older versions
27
when newer were still available (e.g., mixing stable and unstable), was not
28
shown as "Upgradable" neither in the current sessions nor in subsequent
29
sessions (under Upgradable subtree in interactive mode; or command line like
30
"aptitude search ~U"), until the file pkgstates was written to disk because
31
of changes in other packages.
33
* [curses] Don't precede Tags field by newline in package info screen
36
* Correctly detect state of vers/pkg when is ConfigFiles (Closes: #698768)
38
* [cmdline] Show "RECOMMENDED but will not be installed" on pipes and redirs
41
The change was requested in #452202 in 2007 to not show this message and was
42
applied, but after that there are at least 3 separate requests (#647474,
43
#587676 and #720074) asking to show the same messages independently if the
44
output is an interactive terminal, a pipe or a redirection to a file, all
45
citing the lack of this message. (Makes sense, because it is one of the
46
most prominent messages that users see, and also because this way of hiding
47
messages is almost never used elsewhere in the code).
49
In principle, "quiet" shouldn't make a difference when using ttys or
50
pipes/files, but it does because it's primarily tied to the "progress"
51
messages appearing all around the command line code; so in main.cc quiet is
52
set to "1" when the output is not a tty.
54
I think that the best solution by now is to revert the behaviour and simply
55
show the message whenever there are packages to show. The only harm is if
56
people complain again that it's too verbose, but probably nobody is using
57
"-q" in practice to avoid having this message printed.
59
A proper implementation would involve to clean-up the mess of quiet/verbose
60
and convert it to only one single variable, and act verbosely accordinly,
61
and perhaps tie the condition of showing progress of operations on another
64
* [curses] Improve the integration of Forbid upgrades (Closes: #439258)
66
Now it will advance the selection to the next line after marking a package
67
with 'F', if that option is enabled.
69
* Remove unneeded automatically installed packages in the same action
70
(Closes: #478116, #564545, #637257, #368037, #486454, #738517, #789803,
71
#779999, #756507, #759764, #766702, #655483, #740009)
73
There were some cases where manually installed packages were removed/purged,
74
but dependencies that were needed only by these packages (marked as
75
automatically installed, and unused after the removal of the main package)
76
were not removed as part of the the same "action", due to interactions
77
between aptitude (in find_not_orphaned()) and libapt.
79
The packages were detected as "garbage" in subsequent runs of apt (offering
80
to "autoremove" them), aptitude in the command line, or further actions
81
within the interactive session of aptitude; but nevertheless this caused
82
numerous complaints about aptitude not removing the "cruft" (sometimes
83
assuming that because it was not removed immediately, it will not be removed
86
Now, as part of the removal of a package and unless the option
87
"::Delete-Unused" is set to true (defaults to false); aptitude pro-actively
88
marks for removal the dependencies of the package marked as automatic and
89
not used by other packages; and find_not_orphaned() was modified to only
90
have into account installed packages or to-be-installed packages to prevent
93
* Honour ::Purge-Unused when removing packages (Closes: #724034)
95
* Be more informative when virtual packages are involved in broken deps
96
(Closes: #316633, #798898, #799918)
98
* Fix description of config option ::AutoClean-After-Update (Closes: #756937)
100
- User visible changes:
102
* Make boundaries of sessions in the log file more clear (Closes: #269275)
104
* [curses] Avoid marking as auto/non-auto if already set (Closes: #265013)
106
* [curses] Print message when starting to perform actions (Closes: #323371)
108
* Use uppercase APT:: for apt config vars, for consistency (Closes: #519425)
110
Both APT:: and Apt:: (the other common form that we were using) are valid,
111
in fact they are case-agnostic. But for internal consistency and specially
112
for consistency with APT documentation (apt.conf), use the uppercase form.
114
This mostly affects documentation, but also some code and translations. It
115
was substituted automatically in all translations.
117
* [cmdline] Print versions of Provides, if they exist (Closes: #767393)
119
Some aspects of the bug report refer to the curses TUI and it is still
120
unclear how to deal with them, so it was cloned to another report; but the
121
change implemented for this part could be useful, it is harmless, and it
122
simplifies code (two branches differentiating for this reason now merge).
126
* temp.cc: simplify code and messages and reduce the use of boost libs
128
* configure.ac: Remove checks for boost/scoped_array.hpp and boost/random.hpp,
129
not used anymore -- a few seconds less per compilation
131
* In file pkg_ver_item.cc, function pkg_ver_columnizer::setup_column(), the
132
switch/case handling for longstate was missing the options added in 2007 for
133
APT_HAS_TRIGGERS, present for stageflag case and both cases in
134
pkg_columnizer::setup_column() of pkg_columnizer.cc.
136
(In other words, it was missing in 1 of these 4 places where it is
139
* Disable obsolete checks in configure.ac and preprocessor checks in code for
140
APT_HAS_TRIGGERS, APT_HAS_HOMEPAGE and HAVE_DDTP.
142
The support for these functionalities has been present in all involved tools
143
since 2007-2008 or earlier, so it is safe to disable the checks and the
146
* Add functions to check if packages are installed, automatically installed,
147
if they are virtual, and others. They can be used later to make other code
148
more consistent, clear and clean.
150
* Remove sigc++ include from apt_config_widgets.h (fails to build with newer
155
* Guide/User's Manual:
157
* Document Brown colour for downgraded packages in UI (feature implemented
160
- Translation updates:
162
* Russian by Lev Lamberov (Closes: #769425)
164
* Dutch by Frans Spiesschaert (Closes: #800516)