# Documentation One page per migration topic, each showing the Jackson 2 and Jackson 3 output side by side. - [S01 — Mapper construction and immutability](s01-mapper-construction.md) - [S02 — The exception hierarchy](s02-exception-hierarchy.md) - [S03 — Custom serialiser and deserialiser renames](s03-custom-handlers.md) - [S04 — Modules, records, Optional and dates](s04-modules-and-records.md) - [S05 — Default typing](s05-default-typing.md) - [S07 — Defaults that flipped silently](s07-defaults-that-flipped.md) - [S06 / S08 — Coexistence and wire-format equivalence](coexistence.md) Raw stdout for every program is in [`output/`](output), regenerated by [`../run-all.sh`](../run-all.sh).