두 가지를 나눠 둡니다
업그레이드 지침을 따로 두는 이유는 읽는 쪽이 사람이 아니기 때문입니다.
코딩 에이전트(MCP)가 이 파일을 받아 여러분의 코드를 직접 고칩니다.
그래서 “무엇이 바뀌었나”가 아니라 “이 코드를 이렇게 바꿔라” 형태로 쓰여 있습니다.
버전 규칙
유의적 버전을 따릅니다.저장소 주소 옮기기
- Package.swift
- Xcode 프로젝트
URL 과
package: 식별자를 함께 고칩니다.업그레이드하는 법
- 코딩 에이전트에게 맡기기
- 직접 하기
MCP 를 연결했다면 그냥 물어보면 됩니다.에이전트가
onesight_migrate 로 지침을 받아 버전 사이를 순서대로 밟으며 코드를 고칩니다.
깨지는 변경이 있으면 무엇을 왜 바꾸는지 함께 알려줍니다.버전별 조치 요약
0.1.12 — 로그에 등급이 생겼습니다
onDebugLog 와 onLog 가 등급과 글자를 함께 줍니다.
UwbPositioningProvider.onLog 와 note(_:) 도 같은 모양입니다.
note 는 등급 없는 형태(note("...") → .log)도 그대로 씁니다.
0.1.9 — initialize 가 기기 미지원으로 실패하지 않습니다
UWB 칩이 없는 기기에서도 initialize 가 성공합니다. 도면·존은 받아서 그릴 수 있고,
막히는 것은 측위뿐입니다.
initialize 의 catch 에서 E2001·E2002 를 다루던 분기는 이제 도달하지 않습니다.
차단은 FloorSession.begin() 한 곳이 맡습니다.
자주 걸리는 것
unknown package 'onesight-mobile-swift'
unknown package 'onesight-mobile-swift'
저장소 주소만 바꾸고
.product(name:package:) 의 package: 를 그대로 둔 경우입니다.
package: "OneS1ght-iOS-SDK" 로 고치세요.unknown package 'OneS1ght'
unknown package 'OneS1ght'
package: 에 모듈 이름을 넣은 경우입니다. SPM 이 요구하는 값은 저장소 이름입니다 —
package: "OneS1ght-iOS-SDK".판올림 후 초기화가 실패한다
판올림 후 초기화가 실패한다
onDebugLog 를 initialize 앞에 붙이고 코드를 확인하세요.
E5005(응답 해석 실패)라면 SDK·서버 버전 불일치입니다 — 최신 판으로 올리세요.Package.resolved 충돌
Package.resolved 충돌
File → Packages → Reset Package Caches 후 다시 해석합니다.
팀 저장소라면 Package.resolved 를 커밋해 전원이 같은 판을 받게 하세요.관련 문서
릴리즈 노트
각 판에 무엇이 바뀌었나.
코딩 에이전트 (MCP)
업그레이드를 에이전트에게 맡기려면.