As part of Swift best practices the following items are not recommended for production use:
URLSession causes issues when running on Linux, please use AsyncHTTPClient instead
Task { } to execute background jobs are considered unstructured concurrency, and it is recommended to use withThrowingTaskGroup instead:
await withThrowingTaskGroup(of: Void.self) { group in
group.addTask {
...
}
}