 		var stdinProducer: SignalProducer<(), ReactiveTaskError> = .empty
 
 		if let input = taskDescription.standardInput {
-			switch Pipe.create(queue) {
+			switch Pipe.create(queue, group) {
 			case let .Success(pipe):
 				task.standardInput = pipe.value.readHandle
 

		self.environment = environment
		self.standardInput = standardInput
	}
}

extension TaskDescription: Printable {

public func launchTask(taskDescription: TaskDescription) -> SignalProducer<TaskEvent<NSData>, ReactiveTaskError> {
	return SignalProducer { observer, disposable in
		let queue = dispatch_queue_create(taskDescription.description, DISPATCH_QUEUE_SERIAL)
		let group = TaskDescription.group

		let task = NSTask()
		task.launchPath = taskDescription.launchPath
