<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-private, branch 2.9.0</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=2.9.0</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=2.9.0'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2024-04-12T16:08:51Z</updated>
<entry>
<title>Use the same words for the summary</title>
<updated>2024-04-12T16:08:51Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-04-12T16:08:51Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=f725565ae69a06d0ad5747881b6f54a19c0c1763'/>
<id>urn:sha1:f725565ae69a06d0ad5747881b6f54a19c0c1763</id>
<content type='text'>
Instead of using Upgrades, Installs, and so on, just use
Upgrading, Installing, etc. This solves the problem of
not having a nice noun for "Not upgrading".
</content>
</entry>
<entry>
<title>Only show Recommends/Suggests for new installs, not upgrades</title>
<updated>2024-04-12T14:01:02Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-04-12T13:10:20Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=275ee5afe968e77d8379f0f3b6dc54c6239aa4f6'/>
<id>urn:sha1:275ee5afe968e77d8379f0f3b6dc54c6239aa4f6</id>
<content type='text'>
This makes things more useful in combination with the upgrade
command, but introduces a subtle change seen in the test suite
when you use the install command to upgrade packages.
</content>
</entry>
<entry>
<title>Show Recommends/Suggests for upgrades too, move them down</title>
<updated>2024-04-12T13:57:36Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-04-12T12:24:33Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=d3274a11d9e153cd996b89436b01d00b218a4985'/>
<id>urn:sha1:d3274a11d9e153cd996b89436b01d00b218a4985</id>
<content type='text'>
Extract the code to show them into its own function and call
it in the old place for output version &lt; 30, or after the
dependencies being installed for new output format.
</content>
</entry>
<entry>
<title>apt: Introduce the new terse apt output format 3.0</title>
<updated>2024-04-12T13:57:36Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-04-11T21:04:43Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=abfae1aec588c1b4ae46f229d8312a3c5e6b8b7a'/>
<id>urn:sha1:abfae1aec588c1b4ae46f229d8312a3c5e6b8b7a</id>
<content type='text'>
The key talking points here are:

1. Instead of long sentences, we use short concise messages,
   e.g. "The following NEW packages will be installed" becomes
   "Installing".

2. Dependencies are only listed once. We removed the
   "The following additional packages will be installed" section
   in favor of splitting up the "Installing" section into
   "Installing" and "Installing dependencies" (like dnf)

3. The order of the output is different:

   1. Packages to be installed manually
   2. Packages to be installed automatically
   4. Weak dependencies of new packages not installed
   3. Packages to be upgraded
   4. Packages to be downgraded
   5. Packages that have been kept back / are on hold
   6. Removals
   7. Essential removals

   i.e. we logically show you the action that is being
   done, followed by lists related to the action.

4. As requested by popey, we have colorful UI, with green for
   packages being installed and red for packages being removed.

Caveats:

- The list of recommends and suggests has not been updated yet,
  it should move to after the packages being installed (as they
  are what triggers them)

This also introduces output format versioning, configured by the
APT::Output-Format option. The default value is 0, except for the
apt(8) binary where it is 30 - which enables the new style.
</content>
</entry>
<entry>
<title>OpProgress: Erase lines when done</title>
<updated>2024-04-12T13:57:05Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-04-12T10:00:45Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=8ddfeb2fb65dd45267d8f7abfc540d2b8cb73a5c'/>
<id>urn:sha1:8ddfeb2fb65dd45267d8f7abfc540d2b8cb73a5c</id>
<content type='text'>
It's interesting to the user to see the progress when it happens,
but arguably once it's done it is just visual clutter, so let's
not write newlines, and when we are done, instead of appending
"Done", let's just empty the line.

This requires some effort to keep apt-cdrom happy which just writes
lines to stdout itself. Bad apt-cdrom. Maybe there is a better fix
for it, but this gets us going.
</content>
</entry>
<entry>
<title>columnar: Fix floating point exception (list is empty if -V)</title>
<updated>2024-04-12T13:56:56Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-04-12T09:44:41Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=88b0673b0dcc4c9c917b0cb9c16cc2ca0a92a987'/>
<id>urn:sha1:88b0673b0dcc4c9c917b0cb9c16cc2ca0a92a987</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Columnar output for package lists similar to 'ls'</title>
<updated>2024-04-12T13:56:56Z</updated>
<author>
<name>Christian Blichmann</name>
<email>mail@blichmann.eu</email>
</author>
<published>2022-02-01T19:59:57Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=690993b1b9b4a932ca5bf5374c59e4cf88f18732'/>
<id>urn:sha1:690993b1b9b4a932ca5bf5374c59e4cf88f18732</id>
<content type='text'>
This change makes it a bit easier to quickly grasp the changes
about to be performed by apt.

It displays package lists in a columnar format by default,
similar to what `ls` produces for files.

A new long option `--no-list-columns` and an associated
`APT::Get::List-Columns` config setting control the behavior.

Usage example, with 60 column wide terminal:

```
$ sudo apt upgrade                                          |
Reading package lists... Done                               |
Building dependency tree... Done                            |
Reading state information... Done                           |
Calculating upgrade... Done                                 |
The following packages were automatically installed and are |
no longer required:                                         |
  libappindicator1 libindicator7                            |
  libdbusmenu-gtk4 linux-image-5.14.0-4-amd64               |
Use 'sudo apt autoremove' to remove them.                   |
The following packages have been kept back:                 |
  criu        linux-headers-amd64 nvidia-settings           |
  libxnvctrl0 nvidia-modprobe     xwayland                  |
0 upgraded, 0 newly installed, 0 to remove and 6 not upgrade|
d.                                                          |
```

The effect becomes more pronounced with more packages (e.g. when
doing a dist-upgrade).
</content>
</entry>
<entry>
<title>Modernize standard library includes</title>
<updated>2024-02-20T12:49:04Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-02-20T12:43:08Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=40a75722c43ae24cb9a99d6730a3b25b65819c49'/>
<id>urn:sha1:40a75722c43ae24cb9a99d6730a3b25b65819c49</id>
<content type='text'>
This was automated with sed and git-clang-format, and then I had to
fix up the top of policy.cc by hand as git-clang-format accidentally
indented it by two spaces.
</content>
</entry>
<entry>
<title>Show a separate list of upgrades deferred due to phasing</title>
<updated>2024-02-13T14:08:57Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-02-13T11:54:07Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=1a0882558da05eaf471c2b4049ae27305e7c70ec'/>
<id>urn:sha1:1a0882558da05eaf471c2b4049ae27305e7c70ec</id>
<content type='text'>
This introduces a new line:

    The following upgrades have been deferred due to phasing

This is any kept back package that is also phasing. This may
not be 100% accurate as we have kept it back due to other reasons
in an install command, for example, but we don't track for which
packages we applied phasing in reality.

If additional packages are kept back that are not phasing, show
a a notice

"N: Some packages may have been kept back due to phasing."

LP: #1988819
</content>
</entry>
<entry>
<title>Support -a for setting host architecture in apt-get source -b</title>
<updated>2024-01-19T17:28:31Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2024-01-19T16:06:04Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=2845127968cda30be8423e1d3a24dae0e797bcc8'/>
<id>urn:sha1:2845127968cda30be8423e1d3a24dae0e797bcc8</id>
<content type='text'>
It is documented and the code supports it, but the command line parsing
actually refuses -a/--host-architecture=arch … probably a sign how much
"apt-get source -b" is (not) used in practice.

Setting via -o APT::Get::Host-Architecture=arch (which -a is just a
shorthand for) works as it did before and can be used if backward
compatibility is important.
</content>
</entry>
</feed>
