 	}
 }
 
-private func <(lhs: DuplicateDependency, rhs: DuplicateDependency) -> Bool {
+public func == (lhs: DuplicateDependency, rhs: DuplicateDependency) -> Bool {
+	return lhs.project == rhs.project && lhs.locations == rhs.locations
+}
+
+public func < (lhs: DuplicateDependency, rhs: DuplicateDependency) -> Bool {
 	if lhs.description < rhs.description {
 		return true
 	}

}

/// A duplicate dependency, used in CarthageError.DuplicateDependencies.
public struct DuplicateDependency {
	/// The duplicate dependency as a project.
	public let project: ProjectIdentifier


import ReactiveTask

/// Possible errors that can originate from Carthage.
public enum CarthageError: Equatable {
	/// One or more arguments was invalid.
	case InvalidArgument(description: String)

