1 # This file shows the history of incompatible changes to
2 # Parrot that invalidated existing PBC (Parrot Byte Code) files.
4 # The latest version number of the bytecode format in this file
5 # is used by Parrot to version the bytecode files it writes and
6 # is able to read. In the future, Parrot should be able to read
7 # and/or write older bytecode versions too.
9 # Currently known actions that should be entered here
10 # (and invalidate PBC are):
12 # - deleting/changing/inserting existing ops in ops.num
13 # - changing operands of existing ops
14 # - adding/deleting/renaming a PMC to classes
15 # - changes in the packfile format itself
16 # - changes to any PMCs that are frozen into the .pbc like
17 # ParrotInterpreter (HLL_info), Subs and more
18 # - other core changes that invalidate byte code :)
20 # After changing PBC_COMPAT either disable t/native_pbc tests or
21 # better, if you have an i386 box at hand, regenerate the PBCs
22 # with tools/dev/mk_native_pbc and commit the changes
24 # TODO TT #361: all .pbc files should make-depend on PBC_COMPAT
26 # Also, if you're removing an opcode, be sure to run "make opsrenumber"
28 # please insert tab separated entries at the top of the list
30 4.9 2009.07.16 bacek Bump revision after merging keys_revamp branch. A lot of *Iterator PMCs were added.
31 4.8 2009.05.30 Infinoid Added Handle PMC
32 4.7 2009.05.29 cotto add cmp_pmc opcode (also, addition of setstdin and root_new in previous commits)
33 4.6 2009.05.18 bacek removed PackfileAnnotationKeys PMC
34 4.5 2009.04.10 cotto removed Ref and SharedRef PMCs
35 4.4 2009.04.07 pmichaud find_caller_lex added
36 4.3 2009.03.25 jonathan socket opcodes added
37 4.2 2009.03.21 cotto removed Bound_NCI PMC
38 4.1 2009.03.17 cotto removed Slice PMC
39 4.0 2009.03.17 allison released 1.0.0
40 3.0 2007.07.23 jonathan implementing new PBC header format
41 2.0 2005.11.22 leo changed PBC format (HLL_info)
42 1.0 2005.10.15 jonathan changed debug segment format
43 0.1 2003.10.21 leo start this file