When format 5 isn't format 5

Aaron Bentley aaron.bentley at utoronto.ca
Tue May 16 15:37:10 BST 2006


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi all,

In updating changeset code, I've discovered that our inventory format
has changed, without changing its version number.

Specifically, new format 5 inventories contain a revision ID, and older
ones do not.  It looks like this change was introduced by Robert's patch
to get rid of the trailing revision-id in basis-inventory filenames.  I
presume that it was intended that only basis inventories would include
revision-ids, but it's also been applied inventories in the inventory weave.

Revision testaments contain the inventory hash, which I believe is just
the inventory XML SHA1 hash.  This means that fixing existing
repositories would break signatures.

Among other things, this strongly suggests that our unit tests should
include a test to make sure we get a reproduceable testament when we
commit a revision with fixed values.

Aaron
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFEaeOW0F+nu1YWqI0RAj6xAJ9YcNuVM/7skJwocsOxnFlyDOwYFACdF4UI
MAzGdL+Yqm7gw32F6m4D8C4=
=TR5h
-----END PGP SIGNATURE-----




More information about the bazaar mailing list