Topaz 5.7 inherits the complete v5.6 grammar and semantics. Migration changes
the package identity; it does not rewrite .tpz source.
From the package root, run:
topaz migrate --from 5.6 --to 5.7 --root .
The command resolves and checks the whole package in both language modes before
writing. On success it changes only [package].language = "5.6" to "5.7"
and an exact std = "5.6" dependency to "5.7". Other dependencies,
comments, formatting, source files, lockfiles, and vendored bytes stay
unchanged. Any parse, resolution, type, dependency, or destination error leaves
every file unchanged.
Regenerate package-derived products after migration:
topaz lock --root .
topaz check --root . --locked
topaz test --root . --locked
topaz build --root . --locked --out-dir build
Use --language-version 5.6, or keep language = "5.6" in an unmigrated
package, when you need the explicit compatibility lane. New packages default
to topaz-5.7.