Skip to content

Commit 6f122ce

Browse files
committed
Sync housekeeping
1 parent 3504340 commit 6f122ce

File tree

8 files changed

+84
-74
lines changed

8 files changed

+84
-74
lines changed

example-project/project.clj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
[org.clojure/tools.nrepl "0.2.12"] ; Optional, for Cider
1717

1818
[com.taoensso/sente "1.10.0-SNAPSHOT"] ; <--- Sente
19-
[com.taoensso/timbre "4.6.0"]
19+
[com.taoensso/timbre "4.7.2"]
2020

2121
;;; TODO Choose (uncomment) a supported web server -----------------------
2222
[http-kit "2.2.0"] ; Default

project.clj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@
1313
:dependencies
1414
[[org.clojure/clojure "1.5.1"]
1515
[org.clojure/core.async "0.2.385"]
16-
[com.taoensso/encore "2.64.1"]
16+
[com.taoensso/encore "2.67.1"]
1717
[org.clojure/tools.reader "0.10.0"]
18-
[com.taoensso/timbre "4.6.0"]]
18+
[com.taoensso/timbre "4.7.2"]]
1919

2020
:plugins [[lein-cljsbuild "1.1.3"]
2121
;;

src/taoensso/sente.cljc

Lines changed: 58 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -79,11 +79,12 @@
7979

8080
#?(:cljs
8181
(:require-macros
82-
[cljs.core.async.macros :as asyncm :refer (go go-loop)])))
82+
[cljs.core.async.macros :as asyncm :refer (go go-loop)]
83+
[taoensso.sente :as sente-macros :refer (elide-require)])))
8384

8485
(if (vector? taoensso.encore/encore-version)
85-
(enc/assert-min-encore-version [2 53 1])
86-
(enc/assert-min-encore-version 2.53))
86+
(enc/assert-min-encore-version [2 67 1])
87+
(enc/assert-min-encore-version 2.67))
8788

8889
#?(:cljs (def ^:private node-target? (= *target* "nodejs")))
8990

@@ -124,7 +125,7 @@
124125
(defn client-event-msg? [x]
125126
(and
126127
(map? x)
127-
(enc/keys= x #{:ch-recv :send-fn :state :event :id :?data})
128+
(enc/ks= #{:ch-recv :send-fn :state :event :id :?data} x)
128129
(let [{:keys [ch-recv send-fn state event]} x]
129130
(and
130131
(enc/chan? ch-recv)
@@ -135,9 +136,9 @@
135136
(defn server-event-msg? [x]
136137
(and
137138
(map? x)
138-
(enc/keys= x #{:ch-recv :send-fn :connected-uids
139-
:ring-req :client-id
140-
:event :id :?data :?reply-fn :uid})
139+
(enc/ks= #{:ch-recv :send-fn :connected-uids
140+
:ring-req :client-id
141+
:event :id :?data :?reply-fn :uid} x)
141142
(let [{:keys [ch-recv send-fn connected-uids
142143
ring-req client-id event ?reply-fn]} x]
143144
(and
@@ -768,7 +769,7 @@
768769
(defn- assert-send-args [x ?timeout-ms ?cb]
769770
(assert-event x)
770771
(assert (or (and (nil? ?timeout-ms) (nil? ?cb))
771-
(and (enc/nneg-int? ?timeout-ms)))
772+
(and (enc/nat-int? ?timeout-ms)))
772773
(str "cb requires a timeout; timeout-ms should be a +ive integer: " ?timeout-ms))
773774
(assert (or (nil? ?cb) (ifn? ?cb) (enc/chan? ?cb))
774775
(str "cb should be nil, an ifn, or a channel: " (type ?cb)))))
@@ -829,7 +830,7 @@
829830
cb-ch ?cb]
830831
(fn [reply]
831832
(put! cb-ch
832-
[(keyword (str (enc/fq-name ev-id) ".cb"))
833+
[(keyword (str (enc/as-qname ev-id) ".cb"))
833834
reply])))))))
834835

835836
#?(:cljs
@@ -877,13 +878,14 @@
877878

878879
:handled)))
879880

880-
(defmacro ^:private elide-require
881-
"Experimental. The presence of `js/require` calls can cause issues with
882-
React Native, even if they never execute. Currently no other known
883-
workarounds. Ref. https://github.com/ptaoussanis/sente/issues/247."
884-
[& body]
885-
(when-not (enc/get-sys-val "SENTE_ELIDE_JS_REQUIRE")
886-
`(do ~@body)))
881+
#?(:clj
882+
(defmacro ^:private elide-require
883+
"Experimental. The presence of `js/require` calls can cause issues with
884+
React Native, even if they never execute. Currently no other known
885+
workarounds. Ref. https://github.com/ptaoussanis/sente/issues/247."
886+
[& body]
887+
(when-not (enc/get-sys-val "SENTE_ELIDE_JS_REQUIRE")
888+
`(do ~@body))))
887889

888890
#?(:cljs
889891
(def ^:private ?node-npm-websocket_
@@ -1463,23 +1465,21 @@
14631465
stop? (= p ch-ctrl)]
14641466

14651467
(when-not stop?
1466-
(let [{:as event-msg :keys [event]} v
1467-
[_ ?error]
1468-
(enc/catch-errors
1469-
(when trace-evs? (tracef "Pre-handler event: %s" event))
1470-
(event-msg-handler
1471-
(if server?
1472-
(have! server-event-msg? event-msg)
1473-
(have! client-event-msg? event-msg))))]
1474-
1475-
(when-let [e ?error]
1476-
(let [[_ ?error2]
1477-
(enc/catch-errors
1478-
(if-let [eh error-handler]
1479-
(error-handler e event-msg)
1480-
(errorf e "Chsk router `event-msg-handler` error: %s" event)))]
1481-
(when-let [e2 ?error2]
1482-
(errorf e2 "Chsk router `error-handler` error: %s" event))))
1468+
(let [{:as event-msg :keys [event]} v]
1469+
1470+
(enc/catching
1471+
(do
1472+
(when trace-evs? (tracef "Pre-handler event: %s" event))
1473+
(event-msg-handler
1474+
(if server?
1475+
(have! server-event-msg? event-msg)
1476+
(have! client-event-msg? event-msg))))
1477+
e1
1478+
(enc/catching
1479+
(if-let [eh error-handler]
1480+
(error-handler e1 event-msg)
1481+
(errorf e1 "Chsk router `event-msg-handler` error: %s" event))
1482+
e2 (errorf e2 "Chsk router `error-handler` error: %s" event)))
14831483

14841484
(recur)))))
14851485

@@ -1525,30 +1525,31 @@
15251525

15261526
;;;; Deprecated
15271527

1528-
#?(:clj
1529-
(defn start-chsk-router-loop!
1530-
"DEPRECATED: Please use `start-chsk-router!` instead"
1531-
[event-msg-handler ch-recv]
1532-
(start-server-chsk-router! ch-recv
1533-
;; Old handler form: (fn [ev-msg ch-recv])
1534-
(fn [ev-msg] (event-msg-handler ev-msg (:ch-recv ev-msg))))))
1528+
(enc/deprecated
1529+
#?(:clj
1530+
(defn start-chsk-router-loop!
1531+
"DEPRECATED: Please use `start-chsk-router!` instead"
1532+
[event-msg-handler ch-recv]
1533+
(start-server-chsk-router! ch-recv
1534+
;; Old handler form: (fn [ev-msg ch-recv])
1535+
(fn [ev-msg] (event-msg-handler ev-msg (:ch-recv ev-msg))))))
15351536

1536-
#?(:cljs
1537-
(defn start-chsk-router-loop!
1538-
"DEPRECATED: Please use `start-chsk-router!` instead"
1539-
[event-handler ch-recv]
1540-
(start-client-chsk-router! ch-recv
1541-
;; Old handler form: (fn [ev ch-recv])
1542-
(fn [ev-msg] (event-handler (:event ev-msg) (:ch-recv ev-msg))))))
1537+
#?(:cljs
1538+
(defn start-chsk-router-loop!
1539+
"DEPRECATED: Please use `start-chsk-router!` instead"
1540+
[event-handler ch-recv]
1541+
(start-client-chsk-router! ch-recv
1542+
;; Old handler form: (fn [ev ch-recv])
1543+
(fn [ev-msg] (event-handler (:event ev-msg) (:ch-recv ev-msg))))))
15431544

1544-
(def set-logging-level! "DEPRECATED. Please use `timbre/set-level!` instead" timbre/set-level!)
1545+
(def set-logging-level! "DEPRECATED. Please use `timbre/set-level!` instead" timbre/set-level!)
15451546

1546-
#?(:cljs (def ajax-call "DEPRECATED: Please use `ajax-lite` instead" enc/ajax-lite))
1547-
#?(:cljs
1548-
(def default-chsk-url-fn "DEPRECATED"
1549-
(fn [path {:as location :keys [protocol host pathname]} websocket?]
1550-
(let [protocol
1551-
(if websocket?
1552-
(if (= protocol "https:") "wss:" "ws:")
1553-
protocol)]
1554-
(str protocol "//" host (or path pathname))))))
1547+
#?(:cljs (def ajax-call "DEPRECATED: Please use `ajax-lite` instead" enc/ajax-lite))
1548+
#?(:cljs
1549+
(def default-chsk-url-fn "DEPRECATED"
1550+
(fn [path {:as location :keys [protocol host pathname]} websocket?]
1551+
(let [protocol
1552+
(if websocket?
1553+
(if (= protocol "https:") "wss:" "ws:")
1554+
protocol)]
1555+
(str protocol "//" host (or path pathname)))))))

src/taoensso/sente/server_adapters/dogfort.cljs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,16 @@
22
"Sente server adapter for Node.js with Dog Fort
33
(https://github.com/whamtet/dogfort)."
44
{:author "Matthew Molloy <@whamtet>"}
5-
(:require [taoensso.sente.server-adapters.generic-node :as generic-node]))
5+
(:require
6+
[taoensso.encore :as enc :refer-macros ()]
7+
[taoensso.sente.server-adapters.generic-node :as generic-node]))
68

79
(defn get-sch-adapter
810
"Dogfort doesn't need anything special, can just use the `generic-node-ws`
911
adapter."
1012
[] (generic-node/get-sch-adapter))
1113

12-
(do ; DEPRECATED
14+
(enc/deprecated
1315
;; These are stateful, could be problematic?
1416
(def dogfort-adapter "Deprecated" (get-sch-adapter))
1517
(def sente-web-server-adapter "Deprecated" dogfort-adapter))

src/taoensso/sente/server_adapters/generic_node.cljs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,10 @@
66
https://github.com/theasp/sente-nodejs-example."
77
{:author "Andrew Phillips <@theasp>, Matthew Molloy <@whamtet>"}
88
(:require
9-
[taoensso.sente.interfaces :as i]
9+
[taoensso.encore :as enc :refer-macros ()]
1010
[taoensso.timbre :as timbre
11-
:refer-macros (tracef debugf infof warnf errorf)]))
11+
:refer-macros (tracef debugf infof warnf errorf)]
12+
[taoensso.sente.interfaces :as i]))
1213

1314
(defn- ws-open? [ws] (= (.-readyState ws) (.-OPEN ws)))
1415

@@ -94,7 +95,7 @@
9495

9596
(defn get-sch-adapter [] (GenericNodeServerChanAdapter.))
9697

97-
(do ; DEPRECATED
98+
(enc/deprecated
9899
;; These are stateful, could be problematic?
99100
(def generic-node-adapter "Deprecated" (get-sch-adapter))
100101
(def sente-web-server-adapter "Deprecated" generic-node-adapter))

src/taoensso/sente/server_adapters/http_kit.clj

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
(ns taoensso.sente.server-adapters.http-kit
22
"Sente server adapter for http-kit (http://www.http-kit.org/)."
33
{:author "Peter Taoussanis (@ptaoussanis)"}
4-
(:require [taoensso.sente.interfaces :as i]
5-
[org.httpkit.server :as hk]))
4+
(:require
5+
[taoensso.encore :as enc]
6+
[taoensso.sente.interfaces :as i]
7+
[org.httpkit.server :as hk]))
68

79
(extend-type org.httpkit.server.AsyncChannel
810
i/IServerChan
@@ -29,6 +31,6 @@
2931

3032
(defn get-sch-adapter [] (HttpKitServerChanAdapter.))
3133

32-
(do ; DEPRECATED
34+
(enc/deprecated
3335
(def http-kit-adapter "Deprecated" (get-sch-adapter))
3436
(def sente-web-server-adapter "Deprecated" http-kit-adapter))

src/taoensso/sente/server_adapters/immutant.clj

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
(ns taoensso.sente.server-adapters.immutant
22
"Sente server adapter for Immutant v2+ (http://immutant.org/)."
33
{:author "Toby Crawley (@tobias)"}
4-
(:require [taoensso.sente.interfaces :as i]
5-
[immutant.web.async :as imm]))
4+
(:require
5+
[taoensso.encore :as enc]
6+
[taoensso.sente.interfaces :as i]
7+
[immutant.web.async :as imm]))
68

79
(extend-type org.projectodd.wunderboss.web.async.Channel
810
i/IServerChan
@@ -30,7 +32,7 @@
3032

3133
(defn get-sch-adapter [] (ImmutantServerChanAdapter.))
3234

33-
(do ; DEPRECATED
35+
(enc/deprecated
3436
(defn make-immutant-adapter "Deprecated" [_opts] (get-sch-adapter))
3537
(def immutant-adapter "Deprecated" (get-sch-adapter))
3638
(def sente-web-server-adapter immutant-adapter))

src/taoensso/sente/server_adapters/nginx_clojure.clj

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,10 @@
22
"Sente server adapter for Nginx-Clojure v0.4.2+
33
(http://nginx-clojure.github.io/)."
44
{:author "Zhang Yuexiang (@xfeep)"}
5-
(:require [taoensso.sente.interfaces :as i]
6-
[nginx.clojure.core :as ncc]))
5+
(:require
6+
[taoensso.encore :as enc]
7+
[taoensso.sente.interfaces :as i]
8+
[nginx.clojure.core :as ncc]))
79

810
(def ^:dynamic *max-message-size*
911
nginx.clojure.WholeMessageAdapter/DEFAULT_MAX_MESSAGE_SIZE)
@@ -47,6 +49,6 @@
4749

4850
(defn get-sch-adapter [] (NginxServerChanAdapter.))
4951

50-
(do ; DEPRECATED
52+
(enc/deprecated
5153
(def nginx-clojure-adapter (get-sch-adapter))
5254
(def sente-web-server-adapter nginx-clojure-adapter))

0 commit comments

Comments
 (0)