 
   futura.promise.Promise
   (publisher* [source xform]
-    (promise->publisher source xform))
+    (assert (nil? xform) "not supported operation.")
+    (promise->publisher source))
 
   Publisher
   (publisher* [source xform]


      Publisher
      (^void subscribe [_ ^Subscriber subscriber]
        (let [subscription (chan->subscription subscriber source xform)]
          (.onSubscribe subscriber subscription))))))

(extend-protocol IPublisher
  nil
  (publisher* [source xform]
    (empty->publisher source xform))

  java.lang.Long
  (publisher* [source xform]
    (empty->publisher source xform))

  java.lang.Iterable
  (publisher* [source xform]
    (iterable->publisher source xform))

  manifold.stream.default.Stream
  (publisher* [source xform]
    (stream->publisher source xform))

  clojure.core.async.impl.channels.ManyToManyChannel
  (publisher* [source xform]
    (channel->publisher source xform))

  manifold.deferred.IDeferred
  (publisher* [source xform]


(defn- promise->publisher
  "Create a publisher with promise as source."
  [source]
  (reify Publisher
    (^void subscribe [_ ^Subscriber subscriber]
      (let [subscription (promise->subscription subscriber source)]
