Вот моя установка для разработки:
В MacOS я использую Xcode для редактирования и сборки (но не запуска) своего кода (я строю под Xcode/MacOS только для того, чтобы исключить синтаксические ошибки из проекта). Я использую swift package generate-xcodeproj
для создания проекта Xcode с некоторыми настройками сценария для проекта Xcode после того, как мне нужно добавить некоторые настройки.
В контейнере Docker под управлением Ubuntu, в окне терминала в Mac OS, в том же каталоге, что и в Mac OS, я запускаю свои тесты.
Проблема, с которой я сталкиваюсь, заключается в том, что каждый раз, когда я переключаюсь на другую сторону - чтобы начать тестирование в Docker/Ubuntu или начать редактирование в Xcode, кажется, мне нужно удалить папку .build. Что затем включает в себя загрузку и сборку всех пакетов.
Если я перейду от работы с Docker/Ubuntu к Xcode/MacOS без очистки и перестройки проекта Xcode, я получу сборку своего сервера в Xcode:
Если я сгенерирую проект Xcode, а затем попытаюсь собрать и протестировать его на Docker/Ubuntu, swift test
сделает обновление для всех пакетов, что требует времени, а затем ему придется собрать проект. После запуска тестов в Docker/Ubuntu, когда я возвращаюсь к MacOS и пытаюсь собрать проект в Xcode, я получаю ошибки:
Для чего это стоит, в Mac OS, вот моя версия Swift: Apple Swift версии 5.2.2 (swiftlang-1103.0.32.6 clang-1103.0.32.51)
А в Linux: версия Swift 5.2.3 (swift-5.2.3-RELEASE)
Это действительно замедляет меня, потому что мне приходится регенерировать проекты, повторно загружать пакеты и перестраивать каждый раз с каждой стороны при переключении. Мысли?