Swift 3.1 makes dependency state explicit
engineeringswiftpackagescompatibilitySwift 3.1 separates editable dependencies from managed checkouts and records dependency versions. Tools-version declarations also let package authors adopt new tools without excluding every older client.