Modern Concurrency: Getting Started, Episode 3: Your First Asynchronous App | raywenderlich.com

Learn how to set up the course server, then use async/await and the task view modifier in the LittleJohn app’s SymbolListView.


This is a companion discussion topic for the original entry at https://www.raywenderlich.com/28434449-modern-concurrency-getting-started/lessons/3
1 Like

This course is for Swift 5.5, iOS 15, and Xcode 13.4 thus
If you couldn’t get the server to run with Xcode 14, here is how to fixed it.

Update vapor to 4.66.1 in the Package.swift file

.package(url: "https://github.com/vapor/vapor.git", .exact("4.66.1"))

then

rm -Rf .build
rm Package.resolved
swift run
5 Likes

Hi @audrey,

Getting error when attempting to run vapor server from terminal. Checked vapor version in Package.swift file as mentioned by @byaruhaf which was already set to “4.66.1”. Also attempted to update to latest version of Vapor “4.67.4” and still received same error as below. Would running vapor server / terminal on Apple Silicon without using Rosetta effect this? Not sure how to debug to be able to continue course.

Error:
Compiling RealModule Double+Real.swift**error:** error reading dependency file '/Users/erikuecke/iosDevelopment/RW/Modern Concurrency Async:Awaitness/video-mcon-materials-versions-1.0/CourseServer/.build/arm64-apple-macosx/debug/RealModule.build/AlgebraicField.d': unexpected character in prerequisites

Adrian Strahan, the tech editor for this course, also had problems with CourseServer. He downloaded the materials for the book and built the file in 00-book-server, and that worked for him.

Solution found: Hi @audrey thank you for your help. @adrianstrahan Attempting to run the books server from the terminal seemed to not work either. But, I was able to find a solution that may help others when receiving errors, when attempting to run servers from terminal.

Solution:

  1. Open Package.swift file with Xcode.
  2. Let Xcode resolve packages and index.
  3. Select “Mac” for device to build and run on.
  4. Start active scheme by clicking “Run” arrow button.

*Note: For whatever reason this solution seems to work without similar errors when attempting to run from terminal. Even attempted to run terminal on Rosetta. After extensive searching, unable to find reason for errors recieved when running server from terminal.

hi Erik, thanks for persevering and finding this solution!