[Impact] The apt.Package objects use the id as the hash, but the hash can change after reopening, meaning that code will fail to work, for example:
c=apt.Cache() p=c["a"] set_of_p={p} c.open() assert p in set_of_p
will fail.
[Test case] The above test case is run as part of autopkgtest (syntax is slightly different)
[Regression potential] Hashing packages objects will be slower as it hashes the name and architecture now.
[Impact]
The apt.Package objects use the id as the hash, but the hash can change after reopening, meaning that code will fail to work, for example:
c=apt.Cache()
p=c["a"]
set_of_p={p}
c.open()
assert p in set_of_p
will fail.
[Test case]
The above test case is run as part of autopkgtest (syntax is slightly different)
[Regression potential]
Hashing packages objects will be slower as it hashes the name and architecture now.