This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2015-12-08
Channels
- # admin-announcements (3)
- # beginners (284)
- # boot (179)
- # cider (15)
- # cljs-dev (6)
- # cljsrn (95)
- # clojure (105)
- # clojure-austria (4)
- # clojure-berlin (9)
- # clojure-germany (4)
- # clojure-japan (3)
- # clojure-russia (65)
- # clojurebridge (1)
- # clojurescript (109)
- # code-reviews (16)
- # cursive (27)
- # datavis (19)
- # datomic (68)
- # devcards (7)
- # funcool (31)
- # jobs (1)
- # ldnclj (2)
- # lein-figwheel (3)
- # leiningen (4)
- # off-topic (419)
- # om (255)
- # parinfer (39)
- # portland-or (2)
- # re-frame (28)
- # reagent (14)
- # slack-help (12)
- # spacemacs (1)
well, maybe everyone already know about it and using it - but you can use figwheel-react-native
with nrepl. Meaning you can connect your cider (or any other IDE) and get so much awesomeness from the development
Here short instruction https://github.com/decker405/figwheel-react-native/issues/7
yeah was fooling around with renatal the other day
natal is using ambly as a repl which does some modification on the native side of the app. figwheel-react-native has a beautiful hack which allows figwheel to run along with rn packager. Not a big change for the end user, but looks cleaner and allows much easier integration with the existing app (my case exactly)
re-natal is the forked natal which uses figwheel lol
lotsa great movement in build setups š
the nice win with the figwheel setup is chrome debugging
or maybe it was just easier for me to get a better experience with it
i was trying to figure out how to get the source maps working but i think its a webworker thing?
oh, I didnāt know about re-natal. Late for the party
donāt know about source maps or debugger - didnāt have any need in any of this. Repl covers staff for me
checked re-natal - itās using figwheel-react-native ha. Small world
yeah its pretty nice
i probably ran into more issues than i had to because i just copy and pasted some stuff i was working on too late in the night but
debugging caught exceptions is pretty amazing, espcially with source maps
could be yeah, more checks better. Have you tried advanced optimization btw?
in react native land?
only to get the android demo going
in general, yeah
yeah, for some reason everywhere I see :simple
for production build
interesting
might just be convention c&p'ed š
could be yeah. Iām just a bit uncomfortable to release my app with the source code. Advanced compilation makes me much more comfortable
oh, hm, thatās weird. Could it be related to the absence of externs for the RN land?
theres a demo i pulled
for android
lemme google i assumed it was advanced compilation i was doing
yeah, pls
yep advanced
cool, then itās possible
lots of churn tho
might be a react native version thing
arte are you using om next in yr app
not yet - I have an existing app with native UI and part of business logic in CLJS already. Now Iām learning om itself and tools around it
but hopefully yeah - soon Iāll migrate couple of screens to om
Perhaps Nicholas Kariniemi's ClojureScript code āsurvivesā :advanced
because it refers to React Native JavaScript symbols using strings.
ah yeah thats a crucial painpoint for advanced compilation (nods)
well, I guess proper externs would fix it?
FWIW, unchanged versions of Om worked against React Native when it came out. In other words, maybe React externs supplemented with a few more React Native externs would be sufficient.
oh yeah, you are right
The React externs theoretically cover Om's usage, and the supplemental ones really only need to cover what your application code uses, I'd guess.
Yep, Iāll check
@artemyarulin: you do have an interesting point. I suppose anyone could download my Classroom Checkout app and at least steal the JavaScript source.
thats pretty interesting
well, this is an issue if RN itself
Classroom Checkout uses :advanced
, which I agree is pretty effective as an obfuscator :)
oh yeah. Well, for some people CLJS looks like obfuscated already
I want to keep the main feature of RN - hot push without AppStore review
binary is not a choice unfortunately
oh common - nothing scary there
guys from the web doing it all the time and they donāt afraid
exactly!
well - OK, they afraid in any case
āIf you afraid of deployment - you donāt have enough testsā(c) somebody
yeah, this is a just pain
actually without hot deploy itās worser - once I released version with a bug and then I had to wait 10 days (!) in order to release a new version with a fix
ok, it wasnāt actually āonceā
One thing that does scare me is the QTTT React Native thing I released broke with an iOS update. (But then again, that happens with half my apps anyway, native or hybrid).
how did it break?
tru magic
I know this bug and I send a PL to RN with a fix:)
update RN and everything gonna be all right
Yep. Rule #1 with RN - always keep it up to date
I helped mfikes, best day of my life!
Wow. If you look at that preamble we get at the beginning the JavaScript generated by ClojureScript, it is to deal with an integer multiplication error in Safari I helped David track down. :)
hah yeah i noticed that
Things don't feel fragile though. Just normal fairly rare errors. It's amazing all these JavaScript engines produce the same behavior for so much code.
Gotta go. Iāll play with advanced optimisation tomorrow - hopefully Iāll find a solution
Speaking of JavaScriptCore, you should at least compile with :static-fns true
to avoid http://dev.clojure.org/jira/browse/CLJS-910
awesome heads up