Open Brandnew-one opened 1 year ago
Realm을 Tuist에서 제공하는 SPM으로 디펜던시를 추가해서 사용하면 Realm을 사용하는데 에러가 발생했다.
Tuist는 Swift 패키지를 패키지 형태로 가져오는게 아닌 별도의 프로젝트로 만들어서 사용하는데 이때 object-c로 구현된 모듈들을 만들어 주지 못하는 문제점이 있다고 한다.
Carthage를 사용해서 문제를 해결했다는 글이 있어 시도 했으나 실패하고 우선은 Xcode에서 지원하는 SPM 그대로 사용해서 급한대로 해결했다.
Tuist 공식문서에서는 Xcode SPM을 사용할 시 프로젝트 생성 시 캐싱 및 패키지 해결과 같은 중요한 기능에 대한 지원이 손실된다고 하는데 추가적으로 해결 방법을 찾긴해야할것 같다.
기존의 협업이나 회사에서는 Cocoapod을 이용해 외부 디펜던시를 관리했었는데 Xcode SPM을 통해서 외부 라이브러리를 추가하니 .Pacakge.resolved 라는 파일이 생겼는데 이 파일 역시 형상관리를 해야하는가? 에 대한 의문이 생겼다.
해당 파일은 Podfile.lock과 유사하게 외부 라이브러리들의 버전 정보를 담고 있기 때문에 협업 시 버전통일을 위해서 필요하다고 생각해서 .git에 추가했다.
프로젝트 파일안에 숨겨져 있는 것을 확인했다.
Tuist + SPM 에러
Realm을 Tuist에서 제공하는 SPM으로 디펜던시를 추가해서 사용하면 Realm을 사용하는데 에러가 발생했다.
Tuist는 Swift 패키지를 패키지 형태로 가져오는게 아닌 별도의 프로젝트로 만들어서 사용하는데 이때 object-c로 구현된 모듈들을 만들어 주지 못하는 문제점이 있다고 한다.
Carthage를 사용해서 문제를 해결했다는 글이 있어 시도 했으나 실패하고 우선은 Xcode에서 지원하는 SPM 그대로 사용해서 급한대로 해결했다.
Tuist 공식문서에서는 Xcode SPM을 사용할 시 프로젝트 생성 시 캐싱 및 패키지 해결과 같은 중요한 기능에 대한 지원이 손실된다고 하는데 추가적으로 해결 방법을 찾긴해야할것 같다.
Pacakge.resolved
기존의 협업이나 회사에서는 Cocoapod을 이용해 외부 디펜던시를 관리했었는데 Xcode SPM을 통해서 외부 라이브러리를 추가하니 .Pacakge.resolved 라는 파일이 생겼는데 이 파일 역시 형상관리를 해야하는가? 에 대한 의문이 생겼다.
해당 파일은 Podfile.lock과 유사하게 외부 라이브러리들의 버전 정보를 담고 있기 때문에 협업 시 버전통일을 위해서 필요하다고 생각해서 .git에 추가했다.
프로젝트 파일안에 숨겨져 있는 것을 확인했다.