 
   config.inPorts = inPorts
   config.outPorts = outPorts
-  return setupProcess component, config, proc
+
+  # If we're using deprecated WirePattern features we provide warnings on them
+  # and fall back to the legacy implementation of WirePattern
+  setup = if checkDeprecation config, proc then legacyWirePattern else processApiWrapper
+  return setup component, config, proc
 
 legacyWirePattern = (component, config, proc) ->
   # Firing policy for addressable ports

  config.gcTimeout = 300 unless 'gcTimeout' of config

  collectGroups = config.forwardGroups
  # Collect groups from each port?
  if typeof collectGroups is 'boolean' and not config.group
    collectGroups = config.inPorts
  # Collect groups from one and only port?
  if typeof collectGroups is 'string' and not config.group
    collectGroups = [collectGroups]
  # Collect groups from any port, as we group by them
  if collectGroups isnt false and config.group
    collectGroups = true

            # Enforce MultiError with WirePattern (for group forwarding)
            exports.MultiError component, config.name, config.error, groups, scope

            debug "WP: CALL WITH", data, groups, component.params, scope

            # Call the proc function
            if config.async
              postpone = ->
