Ticket #359 (new todo) — at Initial Version

Opened 13 years ago

Last modified 12 years ago

enable UUID for pbc

Reported by: rurban Owned by: rurban
Priority: normal Milestone: 2.6
Component: core Version:
Severity: medium Keywords:
Cc: Language:
Patch status: Platform:

Description

With r36890 I've enabled UUID stamping of pbc's for the t/native_pbc/ tests. tools/dev/pbc_header.pl --up works now again.

In order to enable UUID's (uuid_type=1) for all PBC's I plan the following:

  • read the UUID, the md5 fingerprint of PBC_COMPAT with Parrot::BuildUtils::generate_pbc_fingerprint() at Configure.pl
  • uuid_size = 12, so that the new padding in the header will be 2 instead of 14 and the header size before the directory stay the same.
  • store the pbc_fingerprint as PBC_UUID in config.h for packfile.c
  • write every pbc with this UUID
  • check the UUID when reading pbc's and warn when reading incompatible PBC's, different UUID's.
  • error on reading newer bytecode versions, allow reading older versions. That was the original intention at least.

Note: See TracTickets for help on using tickets.