Topazdocs
인터롭과 마이그레이션

v5.6에서 이전

소스를 다시 쓰지 않고 완전한 Topaz v5.6 패키지를 현재 v5.7 식별자로 옮깁니다.

Topaz 5.7은 v5.6의 문법과 의미론을 모두 그대로 계승합니다. 마이그레이션은 패키지 식별자만 바꾸며 .tpz 소스를 다시 쓰지 않습니다.

패키지 루트에서 다음 명령을 실행합니다.

SH
topaz migrate --from 5.6 --to 5.7 --root .

이 명령은 파일을 쓰기 전에 전체 패키지를 두 언어 모드로 해석하고 검사합니다. 성공하면 [package].language = "5.6""5.7"로, 정확히 std = "5.6"인 의존성만 "5.7"로 바꿉니다. 다른 의존성, 주석, 서식, 소스, 잠금 파일과 벤더 바이트는 바꾸지 않습니다. 구문 분석·이름 해석· 타입·의존성·목적지 검사 중 하나라도 실패하면 어떤 파일도 수정하지 않습니다.

마이그레이션 뒤 패키지에서 파생되는 제품을 다시 만듭니다.

SH
topaz lock --root .
topaz check --root . --locked
topaz test --root . --locked
topaz build --root . --locked --out-dir build

명시적인 호환성 모드가 필요하면 --language-version 5.6을 사용하거나 마이그레이션하지 않은 패키지에서 language = "5.6"을 유지하세요. 새 패키지는 기본적으로 topaz-5.7을 사용합니다.