Repository: Quick/Nimble (swift)

Issue:
CwlPreconditionTesting dependency doesn't work
- [x] I have read [CONTRIBUTING](https://github.com/Quick/Nimble/blob/master/CONTRIBUTING.md) and have done my best to follow them.

## TL;DR

Nimble `8.0.4` depends on `CwlPreconditionTesting`, which makes builds break. I understand why you want to move out code from Nimble and that base it on a library like `CwlPreconditionTesting`, but I find it to be a dealbreaker if it means that it will make Nimble less stable and force all libraries that depend on even more external dependencies.

### What did you do?

My libraries (uses SPM) updated their dependencies to the latest Nimble version, `8.0.4`. This made the builds break.

Forcing SPM to use `8.0.2` makes everything work again.

### What did you expect to happen?

Libraries that upgrade to `8.0.4` from `8.0.2` should build and run like before.

### What actually happened instead?

My libraries fail to build, since `CwlPreconditionTesting` fail with `Undefined symbols for architecture x86_64`.

### Environment

List the software versions you're using:

 - Quick: 2.2.0
 - Nimble: 8.0.4
 - Xcode Version: Xcode 11 GM 2
 - Swift Version: 5.1

Please also mention which package manager you used and its version. Delete the
other package managers in this list:

 - Cocoapods: -
 - Carthage: -
 - Swift Package Manager: Apple Swift Package Manager - Swift 5.1.0 (swiftpm-14696)

Pull request:
Ref: #674

- Closes #696
- Supersedes #697

Patch:
diff --git a/Cartfile.private b/Cartfile.private
index 479fdf892..a04db39fd 100644
--- a/Cartfile.private
+++ b/Cartfile.private
@@ -1,2 +1,2 @@
-github "mattgallagher/CwlCatchException" == 2.0.0-beta.1
-github "mattgallagher/CwlPreconditionTesting" == 2.0.0-beta.1
+github "mattgallagher/CwlCatchException" ~> 2.0
+github "mattgallagher/CwlPreconditionTesting" ~> 2.0
diff --git a/Cartfile.resolved b/Cartfile.resolved
index 3e4ee34e7..2ba0b9ece 100644
--- a/Cartfile.resolved
+++ b/Cartfile.resolved
@@ -1,2 +1,2 @@
-github "mattgallagher/CwlCatchException" "2.0.0-beta.1"
-github "mattgallagher/CwlPreconditionTesting" "2.0.0-beta.1"
+github "mattgallagher/CwlCatchException" "2.0.0"
+github "mattgallagher/CwlPreconditionTesting" "2.0.0"
diff --git a/Package.resolved b/Package.resolved
index c6d87fe25..e79774ff5 100644
--- a/Package.resolved
+++ b/Package.resolved
@@ -7,7 +7,7 @@
         "state": {
           "branch": null,
           "revision": "f809deb30dc5c9d9b78c872e553261a61177721a",
-          "version": "2.0.0-beta.1"
+          "version": "2.0.0"
         }
       },
       {
@@ -15,8 +15,8 @@
         "repositoryURL": "https://github.com/mattgallagher/CwlPreconditionTesting.git",
         "state": {
           "branch": null,
-          "revision": "ea422878db4e680069af320ac444183628360ab1",
-          "version": "2.0.0-beta.1"
+          "revision": "02b7a39a99c4da27abe03cab2053a9034379639f",
+          "version": "2.0.0"
         }
       }
     ]
diff --git a/Package.swift b/Package.swift
index b0795146d..ffae4de28 100644
--- a/Package.swift
+++ b/Package.swift
@@ -10,7 +10,7 @@ let package = Package(
         .library(name: "Nimble", targets: ["Nimble"]),
     ],
     dependencies: [
-        .package(url: "https://github.com/mattgallagher/CwlPreconditionTesting.git", .exact("2.0.0-beta.1")),
+        .package(url: "https://github.com/mattgallagher/CwlPreconditionTesting.git", .upToNextMajor(from: "2.0.0")),
     ],
     targets: [
         .target(


Test patch:
diff --git a/Carthage/Checkouts/CwlPreconditionTesting/Package.swift b/Carthage/Checkouts/CwlPreconditionTesting/Package.swift
index 09175fae6..d6d183dbf 100644
--- a/Carthage/Checkouts/CwlPreconditionTesting/Package.swift
+++ b/Carthage/Checkouts/CwlPreconditionTesting/Package.swift
@@ -8,7 +8,7 @@ let package = Package(
 		.library(name: "CwlPosixPreconditionTesting", targets: ["CwlPosixPreconditionTesting"])
 	],
 	dependencies: [
-		.package(url: "https://github.com/mattgallagher/CwlCatchException.git", from: Version(2, 0, 0, prereleaseIdentifiers: ["-beta.1"]))
+		.package(url: "https://github.com/mattgallagher/CwlCatchException.git", from: "2.0.0")
 	],
 	targets: [
 		.target(
diff --git a/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPosixPreconditionTesting/CwlCatchBadInstructionPosix.swift b/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPosixPreconditionTesting/CwlCatchBadInstructionPosix.swift
index d9f4b8b26..4296a79d3 100644
--- a/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPosixPreconditionTesting/CwlCatchBadInstructionPosix.swift
+++ b/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPosixPreconditionTesting/CwlCatchBadInstructionPosix.swift
@@ -104,5 +104,5 @@ public func catchBadInstruction(block: @escaping () -> Void) -> BadInstructionEx
 	
 	return caught ? BadInstructionException() : nil
 }
-	
+
 #endif