Ticket #407 (closed todo: done)

Opened 5 years ago

Last modified 5 years ago

post-1.0 pbc reader policy

Reported by: rurban Owned by:
Priority: abandoned Milestone: 1.0
Component: core Version:
Severity: fatal Keywords:
Cc: Language:
Patch status: new Platform: all

Description

Attached patch reflects the post-1.0 PBC_COMPAT and deprecation policy change.

pre-1.0 we only supported bytecode versions matching the current one.

From 1.0 on we try to read older pbc's because we changed our pmc and ops renumbering policy. But refuse to read pre-1.0 bytecode as the pmc and ops numbering changed randomly. post-1.0 the earlier ops and pmc indices are kept.

That bytecode version number seems to be 3.37 as today, but should be changed accordingly for the 1.0 release.

Attachments

tt407-post1.0-pf-logic.patch Download (2.4 KB) - added by rurban 5 years ago.
updated

Change History

Changed 5 years ago by allison

  • priority changed from blocker to abandoned
  • severity changed from release to low

Not true, we will still be renumbering ops and pmcs after 1.0.

Changed 5 years ago by allison

  • status changed from new to closed
  • resolution set to invalid

Changed 5 years ago by rurban

updated

Changed 5 years ago by rurban

  • status changed from closed to reopened
  • resolution invalid deleted
  • severity changed from low to fatal

Not true, see lib/Parrot/OpsRenumber.pm, esp. the post-1.0 section at # Parrot 1.0 and beyond case

# At and after # 1.0, the opcodes in ops.num will be non-deletable. New opcodes may # be added to the end of the list and numbered accordingly, but no # opcodes may be deleted.

And please do not delete that section also as in ops.num, as it was designed that way.

Changed 5 years ago by allison

  • status changed from reopened to closed
  • resolution set to done

The design changed 3 years ago. Unfortunately, we didn't catch all the documentation points that needed to be updated when the design changed.

Thanks for identifying the legacy (and untested) code section in lib/Parrot/OpsRenumber.pm. It would have broken horribly with the update of the major version number. Fixed in r37525.

Note: See TracTickets for help on using tickets.