This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-10-03
Channels
- # aleph (1)
- # beginners (42)
- # boot (34)
- # cider (157)
- # cljs-dev (12)
- # cljsrn (3)
- # clojure (165)
- # clojure-conj (1)
- # clojure-india (1)
- # clojure-italy (6)
- # clojure-russia (20)
- # clojure-spec (27)
- # clojure-uk (173)
- # clojurescript (116)
- # cursive (30)
- # datomic (87)
- # devcards (1)
- # docs (9)
- # emacs (2)
- # ethereum (2)
- # events (2)
- # fulcro (60)
- # graphql (10)
- # hoplon (2)
- # jobs-rus (6)
- # keechma (1)
- # lein-figwheel (9)
- # leiningen (36)
- # luminus (2)
- # mount (3)
- # off-topic (16)
- # om (14)
- # onyx (12)
- # pedestal (19)
- # portkey (107)
- # re-frame (9)
- # reagent (5)
- # ring (26)
- # shadow-cljs (149)
- # spacemacs (3)
- # sql (6)
do you understand the error message ?
the java.security.SecureRandom kryo serialization issue is probably separate from clj-http/request var serialization
maybe I do things wrong, but do I need to upload my #‘var everytime it changes ?
It slow down my feedback loop, it’s okay but I am just asking ^^
does it upload everything ? * :live true
ok, nice
the plan is to have pk to upload deltas on change to any var used by the published ones Batching would be achieved by having tests ran before deploying, if tests fail no deploy
have you looked at my keep
stuff, totally wrong ?
I have few mini-websites that are going to massively use portkey
at least I am going to try hard
this tool can be life changing for prototyping
it’s even better than lambda with regular java/node
why that ? it’s just a kryo wrapper for clojure datastructures right ?
because for some clojure stuff we need our own custom serializer and in such cases we clash with carb
the plan is to have pk to upload deltas on change to any var used by the published ones Batching would be achieved by having tests ran before deploying, if tests fail no deploy
@baptiste-from-paris I’m rather bad at faces, have we ever met at the paris clojure group?
so the issue with clj-http.core/request
is a kryo one, and trying to fix it (by working around carb) I trigger another one...
nope, I discovered clojure 1 year ago
but i am part of the clojure paris group
we just had a brainstorming to 3 weeks ago
trying to make Clojure just a little more popular in france !
by the way if one of you want to come to paris to talk about portkey it would be awesome
I am sure we can make it all inclusive with the Clojure user group
back in july (iirc) I chatted with @hmadelaine about “monter à la capitale” (going to the big town) to talk about either portkey or unrepl
when ever you want, we plan to make 6 events this year
which is quite hard, there are not a lot of people willing to talk ^^
yes, not enough speakers
and lot’s of people who are really new to the language
I bet there are less than 5 companies using clojure in France
I really want to increase this number
parens means ^^ ?
sometimes it’s only a matter of few people/companies that make other people choose a tech
it really amaze me how tech companies choose their stack
I worked for Meetic (Match group); we always did what competition were doing
and vice/verca
Offcourse! We are humains ^^
But I think it can be great to have more clojure enthousiast in France
At least just to inject more money in the clojure ecosystem
So that a 28/30 young dev can work on a project like portkey because he already "master" clojure
do you often come to paris @cgrand?
no — for 1.5 year I contracted for SACEM and was in Paris 2 days a week, this ended 2 years ago and since then I didn’t have the opportunity to go to Paris. It has been too long of a time, I should plan a visit to the user group.
but currently I’m looking into going further in the country side, maybe I should open a (clojure) hackers retreat 🙂
saint etienne right ?
the uptake on Clojure in Finland is probably most visible in ClojuTre, this year and last year attendees in the ~300 range
And how many from Finland itself ?
we have great wine 😉 🍷
UCInterpreter
transform clj to .class right ?
I don’t understand also why use vars
& classes
in here =>
(defn freeze [x]
(let [classes (atom #{})
vars (atom #{})
kryo (mk-kryo)
baos (java.io.ByteArrayOutputStream.)]
(with-open [out (com.esotericsoftware.kryo.io.Output. baos)]
(.writeClassAndObject kryo out x))
(.toByteArray baos)))
and from what I understand, it might cause problem according to kryo
doc
[com.esotericsoftware/kryo "4.0.0"]
[com.twitter/carbonite "1.4.0"
:exclusions [com.esotericsoftware.kryo/kryo]]
because carbonite use kryo 3.*no
To serialize, Kryo performs a traversal of the object graph rooted at our initial value.
As kryo walks the graph we log all classes and vars found. (that’s what you see in freeze
)
log-dep
?
we add the classes to the package (and we add also deps of deps, that’s UCInterpreter/analysis job, vars and resources may be found too)
how did you come with this strategy ^^ ?
and in which phase asm generates .class
?
let me summarize the problem(s) portkey is trying to solve 1) bring clojure repl to lambda 2) minify/deploy clojure code -> bytecode -> package -> aws lambda
and I guess the hard part is serialization and handling clojure’s data structure ?