Here's my development setup:
On MacOS, I use Xcode to edit and build (but not run) my code (I build under Xcode/MacOS only to make sure I've got syntax errors out of the project). I use swift package generate-xcodeproj
to create the Xcode project, with some scripted tweaks to the Xcode project after, as I need some settings added.
In a Docker container running Ubuntu, in a terminal window on Mac OS, in the same directory as on Mac OS, I run my tests.
The problem I'm having is every time I switch "sides"-- to start testing in Docker/Ubuntu, or to start editing in Xcode, it seems I have to remove the .build folder. Which then involves downloading and building all the packages.
If I go from working on Docker/Ubuntu to Xcode/MacOS without the clean and rebuilding the Xcode project, I get this building my Server in Xcode:
If I generate the Xcode project, and then try to build and test on Docker/Ubuntu, swift test
does an update on all packages, which takes time and then it has to build the project. After running tests on Docker/Ubuntu, when I go back to MacOS and try to build the project in Xcode, I get failures:
For what it's worth, on Mac OS, here's my Swift version: Apple Swift version 5.2.2 (swiftlang-1103.0.32.6 clang-1103.0.32.51)
And on Linux: Swift version 5.2.3 (swift-5.2.3-RELEASE)
This is really slowing me down to have to regenerate projects, redownload packages, and rebuild each time on each side when I switch. Thoughts?