 # Takes WirePattern configuration of a component and sets up
 # Process API to handle it.
 setupProcess = (component, config, func) ->
+  if checkDeprecation config
+    # If we're using deprecated WirePattern features we provide warnings on them
+    # and fall back to the legacy implementation of WirePattern
+    return legacyWirePattern component, config, func
   # Make param ports control ports
   setupControlPorts component, config
   # Set up sendDefaults function

      else
        # At least one of the outputs has to be resolved
        # for output streams to be flushed.
        if outPorts.length is 1
          tmp = {}
          tmp[outPorts[0]] = streams
          streams = tmp
        for key, stream of streams
          if stream.resolved

              # Disconnect outputs if still connected,
              # this also indicates them as resolved if pending
              outputs = outs
              if config.outPorts.length is 1
                outputs = {}
                outputs[port] = outs
              disconnect = false
