This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2019-12-04
Channels
- # adventofcode (154)
- # announcements (1)
- # babashka (8)
- # beginners (28)
- # bristol-clojurians (3)
- # calva (131)
- # cider (43)
- # clj-kondo (14)
- # clojure (135)
- # clojure-europe (1)
- # clojure-italy (7)
- # clojure-madison (1)
- # clojure-nl (6)
- # clojure-spec (8)
- # clojure-uk (90)
- # clojurescript (47)
- # core-async (9)
- # cryogen (4)
- # cursive (12)
- # datomic (9)
- # emacs (7)
- # fulcro (5)
- # graalvm (56)
- # joker (4)
- # juxt (1)
- # leiningen (6)
- # off-topic (62)
- # pathom (4)
- # pedestal (2)
- # reagent (2)
- # reitit (5)
- # ring (2)
- # schema (4)
- # shadow-cljs (133)
- # sql (38)
- # tools-deps (10)
- # vim (28)
You can always easily identify the people with young children 😂 Morning o/
My good start of the day is that the latest slack client has reverted that horrible rich text editor, you can enable previous editing, using markup, now!
Fabulous! Pity you have to set that for every single workspace you use in Slack tho'...
indeed, but luckily it carries forward to each slack instance, i.e., if you have a work machine and a laptop with slack on them both
I always wondered why there isn't a "meta" preferences that applies globally. I sometimes think that Slack exploded in popularity and the original intent was lost and having multiple workspaces with a global preferences didn't really make the cut originally.
Yeah, they have all sorts of weird cross-workspace features but they don't really help you if you have multiple independent workspaces...
Anyone been watching Castle Rock (Hulu)? Does it eventually make sense?
reClojure inspired me to take a proper look at shadow-cljs I appreciate that the npm integration is a Really Good Thing - I'm not sure what else it does better than Figwheel though. What are the other reasons to choose shadowcljs?
the analysis of each namespace's contribution to eventual js bundle size and the modularization support are the killer features for me
the node/npm interop genuinely is way better too though, can’t overstate how useful that is if you’ve got any JS experience you wanna build on
Hello nice and on topic question. Anyone know a very good gastropub type restaurant for a cosy christmas dinner anywhere along the line between London to Milton Keynes
There's another branch in Berkhamsted within walk of the station (maybe 10 minutes?), still pretty solid but not quite as good IME.
https://cancel.fm/ripcord/ alternative slack and discord client that's written naively, no Web browser technology inside. Very snappy.
Given the domain that sounds alright. Main thing is taking less than a small game's worth of resources per client
ooh can it save me some CPU
Good shout re: Ripcord, it has given me half my monitor back now that I don't need Slack and Discord windows
@seancorfield - Is that the Inspired by Stephen King show..? I have been really wanting to watch that...
Yes it is all based in Castle Rock, Maine and many of the characters are derived from Stephen King stories. It's really good -- best Hulu original I've watched so far -- but it's confusing as hell with jumps all over the timeline and several alternative and often imagined story lines!
Hey y'all, I am hoping that I am doing something dumb, but... I have this code:
response @(http/post
api-url
{:headers {ECMWF-API-Key-Header ECMWF-API-Key
ECMWF-From-Header ECMWF-API-Key-From}
:body json-data-request
:content-type :json
:accept :json})]
(inside a (let ...) )when I run (type response)
I get aleph.http.core.NettyResponse
like I expect, but if I try to pick it apart all I get is errors... Eventually I (println response)
and I just get a number.
A couple of days ago this code was working... 😞
It is worth mentioning that the API in question is successfully queueing my request(s), I am just not able to interrogate the response in the way that I was...
(p/def-derived-map NettyResponse [^HttpResponse rsp complete body]
:status (-> rsp .status .code)
:aleph/keep-alive? (HttpUtil/isKeepAlive rsp)
:headers (-> rsp .headers headers->map)
:aleph/complete complete
:body body)
I am attempting to force the delivery of the defferred by using @
and doing it inside a (let...)
If I run the (http/
operations in my REPL they get delivered, albeit slowly (150-200 ms)
When I test the whole function(s) when the http requests are being made and I am trying to bind them to a local var in a (let ...)
then for some reason they are transformed into a number...
;; A future's calculation is started here and it runs in another thread
user=> (def f (future (Thread/sleep 10000) (println "done") 100))
#'user/f
;;if you wait 10 seconds before dereferencing it you'll see "done"
;; When you dereference it you will block until the result is available.
user=> @f
done
100
So did I, but it does seem to be doing something weird. As I say, the actual http/
calls work in my REPL and indeed the REPL blocks until they are delivered.
Clojure 1.10.1
user=> (def f (future (Thread/sleep 10000) (println "done") 100))
#'user/f
user=> (let [g @f] (println f)
done
@cfeckardt - It's not a plain future, it's a manifold deferred (aleph uses manifold under the hood), and this is where I am wondering if there is a difference...
I am going to try just a "toy" version in my REPL with a Manifold Deferred and see what happens...
(I still think that I am just doing something dumb and I can't see the wood for the trees)
@maleghast derefing a manifold deferred is fine from a sync code context... don't do it from inside deferred/chains
though (you can cause deadlocks)
Yep, I got to the bottom of it... I am going to slink off into the corner and ask you all to pretend I never posted any of this ^^
Yeah, don't leave us in suspense -- what was the issue?🙃
we're all dumbasses pretty much all the time aren't we ? or am i just projecting ?
I think so, and it’s a good place to be, means we’re all learning more at the same time.
Yeah, don't leave us in suspense -- what was the issue?🙃