             try loadPackageGraph()
 
         case .edit:
-            // Make sure we have all the options required for editing the package.
-            guard let packageName = options.editOptions.packageName, (options.editOptions.revision != nil || options.editOptions.checkoutBranch != nil) else {
-                throw PackageToolOperationError.insufficientOptions(usage: editUsage)
-            }
-
+            let packageName = options.editOptions.packageName!
             // Load the package graph.
             try loadPackageGraph()
 

        }
    }

    var editUsage: String {
        let stream = BufferedOutputByteStream()
        stream <<< "Expected package edit format:\n"
        stream <<< "swift package edit <packageName> (--revision <revision> | --branch <newBranch>)\n"
        stream <<< "Note: Either revision or branch name is required."
        return stream.bytes.asString!
    }

    var uneditUsage: String {
        let stream = BufferedOutputByteStream()
        stream <<< "Expected package unedit format:\n"
        stream <<< "swift package unedit --name <packageName> [--force]"
        return stream.bytes.asString!
    }
    
    var pinUsage: String {
        let stream = BufferedOutputByteStream()
        stream <<< "Expected package pin format:\n"

            try workspace.edit(dependency: dependency, at: revision, packageName: manifest.name, checkoutBranch: options.editOptions.checkoutBranch)

        case .unedit:
            let packageName = options.editOptions.packageName!

            // Load the package graph.
            try loadPackageGraph()
