본문으로 건너뛰기

호환성

함께 동작하는 터미널, API, 클라이언트의 버전과 v1 안에서 변하지 않는 것.

터미널, API, 클라이언트 패키지는 각자 버전이 있습니다.

버전 확인

meta = terminal.meta()
print(meta.app_version, meta.api_version)

app_version은 터미널의 버전입니다. 예: 2.0.0. api_version은 API의 버전입니다. /v1 아래의 모든 주소에서 1입니다.

discover()가 API 버전을 대신 확인합니다. 클라이언트가 그 버전을 지원하지 않으면 discover()는 Python에서 IncompatibleTerminal을, TypeScript에서 IncompatibleTerminalError를 발생시킵니다.

함께 동작하는 버전

클라이언트API터미널
0.1.xv1Local API가 들어간 첫 릴리스와 그 이후의 모든 릴리스

클라이언트보다 새로운 터미널은 항상 동작합니다. 터미널보다 새로운 클라이언트도 동작합니다. 터미널에 아직 없는 메서드는 not_found로 응답합니다.

v1이 약속하는 것

v1 안에서 API는 늘어나기만 합니다. 필드, 오류 코드, 토픽, 작업이 추가될 수 있습니다. 기존 항목은 그대로 남고 타입도 유지됩니다.

모르는 필드를 무시하면 더 새로운 터미널이 프로그램을 깨뜨리지 않습니다. 클라이언트는 이미 그렇게 합니다.

형태가 바뀌는 변경은 새 API 버전인 /v2에서만 이루어집니다.

이 페이지의 내용