I have two questions and a proposal about our pbc policy, when we encounter a bc version mismatch and with this path a UUID mismatch.
Proposal: use the Parrot_pbc_read() options to seperate parrot from the pbc_utils.
- parrot, pbc_to_exe and pbc_merge should fail with a "Incompatible packfile" error, when we know that it will fail: UUID and bc version mismatch. option=0
- however, the other parrot_utils, pbc_dump, pbc_info, pbc_disassembler, parrot_debugger should only warn when reading old pbc's, esp. on a UUID mismatch.
option=1
Should we be strict, as currently, or relaxed as promised as original pbc design goals? It was even designed to be more cross-version portable as I remember.
Should our deprecation policies handle this in the code? - change the uuid and bc version but keep portability for two releases.