<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-private, branch 2.3.2</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=2.3.2</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=2.3.2'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2021-04-23T13:04:32Z</updated>
<entry>
<title>Avoid infinite loop on EOF on media change prompt</title>
<updated>2021-04-23T13:04:32Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2021-04-23T13:01:07Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=94cf53979640ff8a29d445a2b056a6b17c7b3e49'/>
<id>urn:sha1:94cf53979640ff8a29d445a2b056a6b17c7b3e49</id>
<content type='text'>
The code missed a break, so it was looping infinitely because
the while loop condition only checked for '\n' and '\r', but not
end of file.
</content>
</entry>
<entry>
<title>2.3-only: Warn that the 0.1 protocol is deprecated</title>
<updated>2021-04-23T10:26:46Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2021-04-23T09:39:15Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=64127478630b676838735b509fec5cdfa36874c8'/>
<id>urn:sha1:64127478630b676838735b509fec5cdfa36874c8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>json: Hook protocol 0.2 (added upgrade,downgrade,reinstall modes)</title>
<updated>2021-04-23T10:26:46Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2021-04-23T09:37:28Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=80dd1447595c536d31912c486ac5e96f983ccc7a'/>
<id>urn:sha1:80dd1447595c536d31912c486ac5e96f983ccc7a</id>
<content type='text'>
Hook protocol 0.2 makes the new fields we added mandatory, and
replaces `install` mode with `upgrade`, `downgrade`, `reinstall`
where appropriate.

Hook negotiation is hacky, but it's the best we can do for now.
Users are advised to upgrade to 0.2
</content>
</entry>
<entry>
<title>json: Add `package-list` and `statistics` install hooks</title>
<updated>2021-04-23T10:26:46Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2021-04-23T08:36:18Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=dc11a4422d99cb49817c827b9f827617b5880600'/>
<id>urn:sha1:dc11a4422d99cb49817c827b9f827617b5880600</id>
<content type='text'>
This enables hooks to output additional information.
</content>
</entry>
<entry>
<title>upgrade: Add JSON hook support (AptCli::Hooks::Upgrade)</title>
<updated>2021-04-23T10:26:46Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2021-04-22T10:53:54Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=de86a4b076a37db2f70ee5fbfbb295cc71c344df'/>
<id>urn:sha1:de86a4b076a37db2f70ee5fbfbb295cc71c344df</id>
<content type='text'>
</content>
</entry>
<entry>
<title>json: Add origins fields to version</title>
<updated>2021-04-23T10:26:46Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2021-04-22T08:45:45Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=4b5215e8e2e31637cb0998ecb80d3c3146760579'/>
<id>urn:sha1:4b5215e8e2e31637cb0998ecb80d3c3146760579</id>
<content type='text'>
Provide access to the origins of a package, such that tools
can display information about them; for example, you can write
a hook counting security upgrades.
</content>
</entry>
<entry>
<title>json: Flush standard file descriptors before calling hooks</title>
<updated>2021-04-23T10:25:40Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2021-04-23T08:34:00Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=0ed07360cd7e229cb458580de1f349d5d9f3568b'/>
<id>urn:sha1:0ed07360cd7e229cb458580de1f349d5d9f3568b</id>
<content type='text'>
This ensures messages are displayed in the correct order.
</content>
</entry>
<entry>
<title>json: Encode NULL strings as null</title>
<updated>2021-04-23T10:25:40Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2021-04-21T10:21:41Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=b5211b9b213273c642a790ae3c3f3bbe1a4cf51e'/>
<id>urn:sha1:b5211b9b213273c642a790ae3c3f3bbe1a4cf51e</id>
<content type='text'>
This is the only nullable thing we have here.
</content>
</entry>
<entry>
<title>json: Actually pop states</title>
<updated>2021-04-23T10:25:40Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2021-04-21T10:17:55Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=09e3c0c855e339216784a1d43715c3ae2d79ec23'/>
<id>urn:sha1:09e3c0c855e339216784a1d43715c3ae2d79ec23</id>
<content type='text'>
The JSON encoder only looked at the top state, but did not
pop it, so if we nested objects, we got stuck in whatever
the last state we pushed aside was, so in our example, we
wrongly get a comma inserted _after_ key "b":

{"a":[{}],
 "b":,[{}]
}
</content>
</entry>
<entry>
<title>json: Escape strings using \u escape sequences, add test</title>
<updated>2021-04-23T10:25:40Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2021-04-21T09:31:46Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=57b727af4e1eea4ea118ca5e5028fa7ce86fb538'/>
<id>urn:sha1:57b727af4e1eea4ea118ca5e5028fa7ce86fb538</id>
<content type='text'>
This allows us to correctly encode strings containing quotation
marks, escape characters and control characters.

The test case is a bit nasty because it embeds private-cachefile.cc
for linkage reasons.
</content>
</entry>
</feed>
