[ClojureScript] Re: ANN: ClojureScript 1.10.741

2020-04-24 Thread Rangel Spasov
Just tried bumping up my React Native project to 1.10.741.

The compilation seems to get stuck (doesn't finish, I waited a bunch and 
usually only takes a few seconds) at the following warnings (which are new, 
do not appear with ClojureScript 1.10.597).

[Figwheel:WARNING] Compile Warning: Use of undeclared Var goog.structs/Map 
 target/public/cljs-out/ios/taoensso/encore.cljs   line:2683  column:16
[Figwheel:WARNING] Compile Warning: Use of undeclared Var 
goog.net.XhrIo/send  target/public/cljs-out/ios/figwheel/repl.cljc   
line:313  column:8
[Figwheel:WARNING] Compile Warning: Use of undeclared Var 
goog.net.XhrIo/send  target/public/cljs-out/ios/figwheel/repl.cljc   
line:516  column:11
[Figwheel:WARNING] Compile Warning: Use of undeclared Var 
goog.net.XhrIo/send  target/public/cljs-out/ios/figwheel/repl.cljc   
line:313  column:8
[Figwheel:WARNING] Compile Warning: Use of undeclared Var 
goog.net.XhrIo/send  target/public/cljs-out/ios/figwheel/repl.cljc   
line:516  column:11

It might be a Figwheel issue but I'm not sure, decided to post here in case 
somebody has a similar problem or a solution.

On Friday, April 24, 2020 at 10:10:56 AM UTC-7, David Nolen wrote:
>
> ClojureScript, the Clojure compiler that emits JavaScript source code.
>
> README and source code: https://github.com/clojure/clojurescript
>
> Please refer to the announce post for the details:
> https://clojurescript.org/news/2020-04-24-release
>
> This release also features a significant enhancement when building against 
> node_modules:
> https://clojurescript.org/news/2020-04-24-bundle-target
>
> As always, feedback welcome!
>
> David
>

-- 
Note that posts from new members are moderated - please be patient with your 
first post.
--- 
You received this message because you are subscribed to the Google Groups 
"ClojureScript" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojurescript+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/clojurescript/15f7d151-2ca2-4823-bd75-24ff86a6b608%40googlegroups.com.


[ClojureScript] Re: [ANN] CLJS Bean: Clojure's bean function for ClojureScript

2019-06-26 Thread Rangel Spasov
Very cool, thanks!

On Saturday, June 15, 2019 at 8:31:52 AM UTC-7, Mike Fikes wrote:
>
> https://github.com/mfikes/cljs-bean
>
> Like clojure.core/bean, but for ClojureScript.
>
>
> (require '[cljs-bean.core :refer [bean]])
>
> (bean #js {:a 1, :b 2})
> ;; => {:a 1, :b 2}
>
>
> This lets you interoperate with JavaScript objects in an idiomatic fashion, 
> while being an order of 
> magnitude faster than equivalent constructs using js->clj:
>
>
> (let [{:keys [a b]} (bean #js {:a 1, :b 2})]
>   (+ a b))
>
>
>

-- 
Note that posts from new members are moderated - please be patient with your 
first post.
--- 
You received this message because you are subscribed to the Google Groups 
"ClojureScript" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojurescript+unsubscr...@googlegroups.com.
To post to this group, send email to clojurescript@googlegroups.com.
Visit this group at https://groups.google.com/group/clojurescript.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/clojurescript/5cf9eb19-0346-4914-9d41-5d381c7c281c%40googlegroups.com.


[ClojureScript] Re: Bridging core.async / callbacks

2019-05-05 Thread Rangel Spasov
"Write a function that does not return until some channel event occurs."
Is this а pure function or it has side effects (network call, etc) ? If 
it's a pure function you can look into core.async transducers.

You can achieve the effect of not returning immediately by putting your 
logic inside of a (go ...) block. Inside (go ...) ! give the 
illusion of threads by "parking" and not returning immediately (of course 
no real threads involved). 
I still believe that with the approach that I outlined before you can 
achieve a good effect but maybe I'm misunderstanding. Maybe some more 
actual code with examples can clarify.


On Saturday, May 4, 2019 at 1:24:51 AM UTC-7, Tom Locke wrote:
>
> I don't think this addresses the issue.
>
> I'll try to state the problem more simply:
>
> Write a function that does not return until some channel event occurs.
>
> (The difficulty being that go, put! and take! all return immediately)
>
> I would argue the ability to do so is:
>
> - fundamentally important for interfacing with JS libraries
> - not possible with the existing core.async API
> - not difficult to implement, but needs to coordinate with the 
> scheduler
>
>
>

-- 
Note that posts from new members are moderated - please be patient with your 
first post.
--- 
You received this message because you are subscribed to the Google Groups 
"ClojureScript" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojurescript+unsubscr...@googlegroups.com.
To post to this group, send email to clojurescript@googlegroups.com.
Visit this group at https://groups.google.com/group/clojurescript.


[ClojureScript] Re: Bridging core.async / callbacks

2019-05-03 Thread Rangel Spasov
Here's one idea, basically put "channel on a channel" idea:


(defonce main-c (chan 1))


(defn start-main-channel-loop []
  ;put channels on the channel in the order that they need to execute
  (go
(loop []
  (let [c (! this first
 (>! callback-c [:second {}])
 ;wait 3 seconds for demo purposes
 (! this second
 (>! i-run-before-callback-c [:first {}]


After about 3 seconds you should see this printed:

*x :::  [:first {}]*
*x :::  [:second {}]*

... i.e. even though we scheduled *[:second {}]* before *[:first {}]*, they 
appear in the desired order at the end.



On Friday, May 3, 2019 at 1:47:10 AM UTC-7, Tom Locke wrote:
>
> In the early core.async presentation, Rich argues that we should avoid 
> putting application logic in callback handlers, and instead build the 
> "machine like" parts of our code in the core.async model. To bridge from 
> callback world to core.async we have put! and take! which we should call as 
> soon as possible.
>
> But what do we do if the library we are interfacing with relies on some 
> effect having happened *before* the callback returns, but our application 
> architecture dictates that effect should come from some other process? (go) 
> (put!) and (take!) all return immediately.
>
> According to my (hopefully incorrect!) understanding, it's not possible.
>
> It seems to me we need something like ( cljs due to the lack of real threads.
>
> However, could we not have an implementation of ( like this?:
>
> (defn(loop
>(or (poll! c)
>(if (any-process-ready?)
>  (do 
>(schedule-next-process!)
>(recur))
>  (throw "deadlock!")
>
> This is making some uninformed assumptions about the scheduler, but 
> presumably there must be:
>
>   - Some kind of list of ready (not blocked on channel operations) 
> processes
>   - The ability to run a ready process until the next scheduling point (or 
> until it runs out of processes).
>
> However I believe the scheduler is to be considered private/opaque, so a 
> proper "userland" implementation would not be possible.
>
>

-- 
Note that posts from new members are moderated - please be patient with your 
first post.
--- 
You received this message because you are subscribed to the Google Groups 
"ClojureScript" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojurescript+unsubscr...@googlegroups.com.
To post to this group, send email to clojurescript@googlegroups.com.
Visit this group at https://groups.google.com/group/clojurescript.


[ClojureScript] Re: ANN: ClojureScript 1.9.854

2017-07-28 Thread Rangel Spasov
Works for me on iOS JavaScriptCore  (RN 0.45). 

Thanks David and all ClojureScript contributors!

Rangel

P.S. The only issue with a library that I saw was 
with 
https://github.com/tailrecursion/cljs-priority-map/blob/master/src/cljs/tailrecursion/priority_map.cljs#L4


*Invalid :refer, var cljs.reader/reader-error does not exist *

I assume this is on the library side to fix with the latest ClojureScript 
update but just FYI if anyone runs into it.

On Friday, July 28, 2017 at 2:55:04 PM UTC-7, David Nolen wrote:
>
> ClojureScript, the Clojure compiler that emits JavaScript source code.
>
> README and source code: https://github.com/clojure/clojurescript
>
> Leiningen dependency information:
>
> [org.clojure/clojurescript "1.9.854"]
>
> This is a significant feature release. Notable new features include
> comprehensive NPM dependency support, overhauled code splitting,
> enhanced JavaScript module preprocessing, declared global exports for
> foreign libs, and checked array operations. There are also a large
> number of fixes, changes, and minor enhancementes. For more detailed
> descriptions of the major enhancements, please refer to the last month
> of posts https://clojurescript.org/news/news.
>
> As always, feedback welcome!
>
> ## 1.9.854
>
> ### Enhancements
> * CLJS-2280: Provide process.env :preload and auto-configure
> * CLJS-2279: Infer `:module-type ` for provided `node_modules`
> * CLJS-2250: Support :foreign-libs overrides via :provides
> * CLJS-2243: Self-host: Add support for :global-exports
> * CLJS-2232: Self-host: Add support for string-based requires
> * add *print-fn-bodies* knob, set to false
> * CLJS-2198: Safe array operations
> * CLJS-2217: Support `:rename` for JS modules
> * CLJS-2214: Support :global-exports for foreign libraries
> * CLJS-1428: Add a cljs.core/*command-line-args* var
> * CLJS-2061: Support ns :require for JS libs, allow strings along with 
> symbol
> * CLJS-2148: Add warnings for invalid use of aget and aset
> * CLJS-2143: Add support for symbol preprocess values
>
> ### Changes
> * CLJS-2273: Bump tools.reader to 1.0.3 and development dependencies
> * CLJS-2235: Allow passing extra maven opts to build scripts
> * CLJS-2267: Allow ^:const inlined vars to affect if emission
> * CLJS-2245: Add support for using a local `node_modules` installation 
> through a new `:node-modules` compiler flag
> * CLJS-2002: Don't throw when no *print-fn* is set
> * support Clojure primitive array type hints, core.async no longer
>   gives warnings
> * CLJS-2213: Node.js target should use node_modules index to emit platform 
> specific require
> * CLJS-2200: bump to tools.reader 1.0.2
> * CLJS-2135: require macro prints last result of loaded-libs
> * CLJS-2192: Add ChakraCore testing facilities
> * CLJS-1800: Defer to tools.reader for cljs.reader functionality
> * CLJS-2163: Clean up uses of aget / aset on objects
> * CLJS-2184: Add `ns-publics` and `ns-imports`
> * CLJS-2183: Assert arguments are quoted symbols in some core macros
> * CLJS-2182: Assert argument to resolve is a quoted symbol
> * CLJS-2186: Update docstrings for aget/aset to be consistent with Clojure
> * CLJS-2180: Allow compiling `:modules` with whitespace optimizations
> * CLJS-1822: Use `:file-min` when processing JS modules with advanced 
> optimizations
> * CLJS-2169: Error when compiling with :source-map and advanced 
> optimizations
> * CLJS-2037: Throw if overwriting alias in current namespace
> * CLJS-2160: Add loaded? and prefetch functions to cljs.loader
> * CLJS-2148: Add unsafe-get and use goog.object
> * CLJS-2161: Bump Closure Compiler to June 2017 release
>
> ### Fixes
> * CLJS-1854: Self-host: Reload ns with const
> * CLJS-2278: JavaScript object literals are printed wth keys that cannot 
> be read
> * CLJS-2276: Self-host: Need test.check dep for CLJS-2275
> * CLJS-2275: cljs.spec.alpha/fdef resolves eagerly
> * CLJS-2259: Extra .cljs_node_repl directory containing cljs.core output
> * CLJS-2274: Update CI script to install deps
> * CLJS-2269: Warn on top level code split loads
> * CLJS-2272: Tests that depended on default install deps behavior failing
> * CLJS-2255: Clean up :npm-deps
> * CLJS-2263: Docstring for neg-int? backwards
> * CLJS-2262: Correct comment that *warn-on-infer* is file-scope
> * CLJS-2258: Stack overflow regression for sequence xform applied to 
> eduction
> * CLJS-2256: Generated code doesn't add newline after sourceMappingURL 
> comment
> * CLJS-2254: Module Indexing: Provide relative paths for a package's main 
> module
> * CLJS-2248: Build API tests rely on Yarn
> * CLJS-2239: Self-host: Add `:target :nodejs` to the docstrings in cljs.js
> * CLJS-2251: Follow-up fix to CLJS-2249 and related commit
> * CLJS-2249: Provide a test for d4b871cce73
> * CLJS-2246: Revert CLJS-2245 and CLJS-2240 and fix `lein test`
> * CLJS-2244: Orphaned processed JS modules breaks :modules
> * CLJS-2242: Lots of undeclared Var warns in cljs.spec.gen.alpha
> * CLJS-2241: Multiple requires of 

[ClojureScript] Re: ANN: ClojureScript 1.9.493, another bugfix release

2017-02-26 Thread Rangel Spasov
I did some digging/manual shrinking. 

It seems that any core.async code with the latest version of ClojureScript does 
not compile under :advanced. I suspect the problem lies with the bump of Google 
Closure dependency and/or core.async.

I made a repo showing a minimal case:

https://github.com/raspasov/cljs-1.9.494-core-async-broken

On Friday, February 24, 2017 at 8:51:10 PM UTC-8, Rangel Spasov wrote:
> Forgot to add: this is my :compiler settings map. 
> 
> {:output-to  "index.ios.js"
>  :main   "env.ios.main"
>  :output-dir "target/ios"
>  :static-fns true
>  :optimize-constants true
>  :parallel-build true
>  ;:pretty-print   true
>  ;:pseudo-names   true
>  :source-map "cljs-source-map.js"
>  :optimizations  :advanced
>  :externs["externs/externs.js"]
>  :closure-defines    {"goog.DEBUG" false}}
> 
> On Friday, February 24, 2017 at 8:46:03 PM UTC-8, Rangel Spasov wrote:
> > Hey guys,
> > 
> > I'm getting this error. It seems that it's happening inside the transpiled 
> > core.async sources. The error carrot at line 1444 points at the semicolon, 
> > pretty strange.
> > 
> > 
> > Feb 24, 2017 8:38:19 PM com.google.javascript.jscomp.LoggerErrorManager 
> > println
> > SEVERE: 
> > /Users/raspasov/projects/project123/target/ios/cljs/core/async.js:1444: 
> > ERROR - Parse error. No newline allowed before '=>'
> > var inst_33727 = async(inst_33726); (^ points at the semicolon)
> > 
> > 
> > Feb 24, 2017 8:38:19 PM com.google.javascript.jscomp.LoggerErrorManager 
> > printSummary
> > WARNING: 1 error(s), 4 warning(s)
> > ERROR: JSC_PARSE_ERROR. Parse error. No newline allowed before '=>' at 
> > /Users/raspasov/projects/project123/target/ios/cljs/core/async.js line 1444 
> > : 34
> > 
> > I tried both :parallel-build true/false but it doesn't make a difference. 
> > It works fine on [org.clojure/clojurescript "1.9.473"]
> > 
> > 
> > Here's how the async.js source looks like around line 1444.
> > 
> > return cljs.core.cst$kw$recur;
> > } else {
> > if((state_val_33738 === (2))){
> > var state_33737__$1 = state_33737;
> > return 
> > cljs.core.async.impl.ioc_helpers.take_BANG_(state_33737__$1,(4),jobs);
> > } else {
> > if((state_val_33738 === (3))){
> > var inst_33735 = (state_33737[(2)]);
> > var state_33737__$1 = state_33737;
> > return 
> > cljs.core.async.impl.ioc_helpers.return_chan(state_33737__$1,inst_33735);
> > } else {
> > if((state_val_33738 === (4))){
> > var inst_33726 = (state_33737[(2)]);
> > var inst_33727 = async(inst_33726); <<<<<<<<<<<<<<<< This is the error line 
> > number 1444
> > var state_33737__$1 = state_33737;
> > if(cljs.core.truth_(inst_33727)){
> > var statearr_33743_33989 = state_33737__$1;
> > (statearr_33743_33989[(1)] = (5));
> > 
> > } else {
> > var statearr_33744_33990 = state_33737__$1;
> > (statearr_33744_33990[(1)] = (6));
> > 
> > }
> > 
> > return cljs.core.cst$kw$recur;
> > } else {
> > if((state_val_33738 === (5))){
> > var state_33737__$1 = state_33737;
> > var statearr_33745_33992 = state_33737__$1;
> > (statearr_33745_33992[(2)] = null);
> > 
> > (statearr_33745_33992[(1)] = (2));
> > 
> > 
> > return cljs.core.cst$kw$recur;
> > } else {
> > if((state_val_33738 === (6))){
> > var state_33737__$1 = state_33737;
> > var statearr_33746_33993 = state_33737__$1;
> > (statearr_33746_33993[(2)] = null);
> > 
> > (statearr_33746_33993[(1)] = (7));
> > 
> > 
> > return cljs.core.cst$kw$recur;
> > } else {
> > if((state_val_33738 === (7))){
> > var inst_33733 = (state_33737[(2)]);
> > var state_33737__$1 = state_33737;
> > var statearr_33747_33994 = state_33737__$1;
> > (statearr_33747_33994[(2)] = inst_33733);
> > 
> > (statearr_33747_33994[(1)] = (3));
> > 
> > 
> > return cljs.core.cst$kw$recur;
> > } else {
> > return null;
> > }
> > }
> > }
> > }
> > }
> > }
> > }
> > 
> > 
> > On Friday, February 24, 2017 at 4:21:35 PM UTC-8, David Nolen wrote:
> > > Just cut 1.9.494 to back out some macros that were made unintentionally 
> > > private.
> > > 
> > > 
> > > On Fri, Feb 24, 2017 at 4:47 PM, David Nolen <dnolen...@gmail.com> wrote:
> > > 
&g

[ClojureScript] Re: ANN: ClojureScript 1.9.493, another bugfix release

2017-02-24 Thread Rangel Spasov
Forgot to add: this is my :compiler settings map. 

{:output-to  "index.ios.js"
 :main   "env.ios.main"
 :output-dir "target/ios"
 :static-fns true
 :optimize-constants true
 :parallel-build true
 ;:pretty-print   true
 ;:pseudo-names   true
 :source-map "cljs-source-map.js"
 :optimizations  :advanced
 :externs["externs/externs.js"]
 :closure-defines{"goog.DEBUG" false}}

On Friday, February 24, 2017 at 8:46:03 PM UTC-8, Rangel Spasov wrote:
> Hey guys,
> 
> I'm getting this error. It seems that it's happening inside the transpiled 
> core.async sources. The error carrot at line 1444 points at the semicolon, 
> pretty strange.
> 
> 
> Feb 24, 2017 8:38:19 PM com.google.javascript.jscomp.LoggerErrorManager 
> println
> SEVERE: 
> /Users/raspasov/projects/project123/target/ios/cljs/core/async.js:1444: ERROR 
> - Parse error. No newline allowed before '=>'
> var inst_33727 = async(inst_33726); (^ points at the semicolon)
> 
> 
> Feb 24, 2017 8:38:19 PM com.google.javascript.jscomp.LoggerErrorManager 
> printSummary
> WARNING: 1 error(s), 4 warning(s)
> ERROR: JSC_PARSE_ERROR. Parse error. No newline allowed before '=>' at 
> /Users/raspasov/projects/project123/target/ios/cljs/core/async.js line 1444 : 
> 34
> 
> I tried both :parallel-build true/false but it doesn't make a difference. It 
> works fine on [org.clojure/clojurescript "1.9.473"]
> 
> 
> Here's how the async.js source looks like around line 1444.
> 
> return cljs.core.cst$kw$recur;
> } else {
> if((state_val_33738 === (2))){
> var state_33737__$1 = state_33737;
> return cljs.core.async.impl.ioc_helpers.take_BANG_(state_33737__$1,(4),jobs);
> } else {
> if((state_val_33738 === (3))){
> var inst_33735 = (state_33737[(2)]);
> var state_33737__$1 = state_33737;
> return 
> cljs.core.async.impl.ioc_helpers.return_chan(state_33737__$1,inst_33735);
> } else {
> if((state_val_33738 === (4))){
> var inst_33726 = (state_33737[(2)]);
> var inst_33727 = async(inst_33726); <<<<<<<<<<<<<<<< This is the error line 
> number 1444
> var state_33737__$1 = state_33737;
> if(cljs.core.truth_(inst_33727)){
> var statearr_33743_33989 = state_33737__$1;
> (statearr_33743_33989[(1)] = (5));
> 
> } else {
> var statearr_33744_33990 = state_33737__$1;
> (statearr_33744_33990[(1)] = (6));
> 
> }
> 
> return cljs.core.cst$kw$recur;
> } else {
> if((state_val_33738 === (5))){
> var state_33737__$1 = state_33737;
> var statearr_33745_33992 = state_33737__$1;
> (statearr_33745_33992[(2)] = null);
> 
> (statearr_33745_33992[(1)] = (2));
> 
> 
> return cljs.core.cst$kw$recur;
> } else {
> if((state_val_33738 === (6))){
> var state_33737__$1 = state_33737;
> var statearr_33746_33993 = state_33737__$1;
> (statearr_33746_33993[(2)] = null);
> 
> (statearr_33746_33993[(1)] = (7));
> 
> 
> return cljs.core.cst$kw$recur;
> } else {
> if((state_val_33738 === (7))){
> var inst_33733 = (state_33737[(2)]);
> var state_33737__$1 = state_33737;
> var statearr_33747_33994 = state_33737__$1;
> (statearr_33747_33994[(2)] = inst_33733);
> 
> (statearr_33747_33994[(1)] = (3));
> 
> 
> return cljs.core.cst$kw$recur;
> } else {
> return null;
> }
> }
> }
> }
> }
> }
> }
> 
> 
> On Friday, February 24, 2017 at 4:21:35 PM UTC-8, David Nolen wrote:
> > Just cut 1.9.494 to back out some macros that were made unintentionally 
> > private.
> > 
> > 
> > On Fri, Feb 24, 2017 at 4:47 PM, David Nolen <dnolen...@gmail.com> wrote:
> > 
> > 
> > ClojureScript, the Clojure compiler that emits JavaScript source code.
> > 
> > 
> > README and source code: https://github.com/clojure/clojurescript
> > 
> > 
> > Leiningen dependency information:
> > 
> > 
> > [org.clojure/clojurescript "1.9.493"]
> > 
> > 
> > This is a bugfix release.
> > 
> > 
> > As always, feedback welcome!
> > 
> > 
> > ### Fixes
> > * CLJS-1948: Possible race condition in compiler w/ parallel-build true
> > * CLJS-1941: `cljs.compiler/cljs-files-in` shouldn't return `.cljc` files 
> > if a `.cljs` file exists for the namespace
> > * CLJS-1940: Undeclared var warning when invoking a protocol method on a 
> > `js` interop form
> > * CLJS-1951: Missing 0 and 1 arity versions of interleave
> > * CLJS-1952: Bump Closure Compiler to Feb 2017 release
> > * CLJS-1937: Self-host: undeclared cljs.core$macros/mod when

[ClojureScript] Re: ANN: ClojureScript 1.9.493, another bugfix release

2017-02-24 Thread Rangel Spasov
Hey guys,

I'm getting this error. It seems that it's happening inside the transpiled 
core.async sources. The error carrot at line 1444 points at the semicolon, 
pretty strange.


Feb 24, 2017 8:38:19 PM com.google.javascript.jscomp.LoggerErrorManager println
SEVERE: /Users/raspasov/projects/project123/target/ios/cljs/core/async.js:1444: 
ERROR - Parse error. No newline allowed before '=>'
var inst_33727 = async(inst_33726); (^ points at the semicolon)


Feb 24, 2017 8:38:19 PM com.google.javascript.jscomp.LoggerErrorManager 
printSummary
WARNING: 1 error(s), 4 warning(s)
ERROR: JSC_PARSE_ERROR. Parse error. No newline allowed before '=>' at 
/Users/raspasov/projects/project123/target/ios/cljs/core/async.js line 1444 : 34

I tried both :parallel-build true/false but it doesn't make a difference. It 
works fine on [org.clojure/clojurescript "1.9.473"]


Here's how the async.js source looks like around line 1444.

return cljs.core.cst$kw$recur;
} else {
if((state_val_33738 === (2))){
var state_33737__$1 = state_33737;
return cljs.core.async.impl.ioc_helpers.take_BANG_(state_33737__$1,(4),jobs);
} else {
if((state_val_33738 === (3))){
var inst_33735 = (state_33737[(2)]);
var state_33737__$1 = state_33737;
return cljs.core.async.impl.ioc_helpers.return_chan(state_33737__$1,inst_33735);
} else {
if((state_val_33738 === (4))){
var inst_33726 = (state_33737[(2)]);
var inst_33727 = async(inst_33726);  This is the error line 
number 1444
var state_33737__$1 = state_33737;
if(cljs.core.truth_(inst_33727)){
var statearr_33743_33989 = state_33737__$1;
(statearr_33743_33989[(1)] = (5));

} else {
var statearr_33744_33990 = state_33737__$1;
(statearr_33744_33990[(1)] = (6));

}

return cljs.core.cst$kw$recur;
} else {
if((state_val_33738 === (5))){
var state_33737__$1 = state_33737;
var statearr_33745_33992 = state_33737__$1;
(statearr_33745_33992[(2)] = null);

(statearr_33745_33992[(1)] = (2));


return cljs.core.cst$kw$recur;
} else {
if((state_val_33738 === (6))){
var state_33737__$1 = state_33737;
var statearr_33746_33993 = state_33737__$1;
(statearr_33746_33993[(2)] = null);

(statearr_33746_33993[(1)] = (7));


return cljs.core.cst$kw$recur;
} else {
if((state_val_33738 === (7))){
var inst_33733 = (state_33737[(2)]);
var state_33737__$1 = state_33737;
var statearr_33747_33994 = state_33737__$1;
(statearr_33747_33994[(2)] = inst_33733);

(statearr_33747_33994[(1)] = (3));


return cljs.core.cst$kw$recur;
} else {
return null;
}
}
}
}
}
}
}


On Friday, February 24, 2017 at 4:21:35 PM UTC-8, David Nolen wrote:
> Just cut 1.9.494 to back out some macros that were made unintentionally 
> private.
> 
> 
> On Fri, Feb 24, 2017 at 4:47 PM, David Nolen  wrote:
> 
> 
> ClojureScript, the Clojure compiler that emits JavaScript source code.
> 
> 
> README and source code: https://github.com/clojure/clojurescript
> 
> 
> Leiningen dependency information:
> 
> 
> [org.clojure/clojurescript "1.9.493"]
> 
> 
> This is a bugfix release.
> 
> 
> As always, feedback welcome!
> 
> 
> ### Fixes
> * CLJS-1948: Possible race condition in compiler w/ parallel-build true
> * CLJS-1941: `cljs.compiler/cljs-files-in` shouldn't return `.cljc` files if 
> a `.cljs` file exists for the namespace
> * CLJS-1940: Undeclared var warning when invoking a protocol method on a `js` 
> interop form
> * CLJS-1951: Missing 0 and 1 arity versions of interleave
> * CLJS-1952: Bump Closure Compiler to Feb 2017 release
> * CLJS-1937: Self-host: undeclared cljs.core$macros/mod when compiling 
> cljs/core.cljs
> * CLJS-1936: cljs.analyzer declares vars which are only used in Clojure
> * CLJS-1949: Self-host: cljs.compiler/munge doesn't preserve JVM compiler 
> semantics
> * CLJS-1950: Eliminate instances of #^
> * CLJS-1943: Self-host: `cljs.pprint`'s macros can't be compiled
> * CLJS-1945: cljs.spec/every-impl kind-fn kind-form dead code
> * CLJS-1944: Can't spec generate non-vector collections
> * CLJS-1946: Self-hosted: don't emit `goog.require` calls for foreign libs if 
> optimizations different than `:none`
> * CLJS-1636: Mark some symbols in core macros ns as private
> * CLJS-1939: Fix Node load_file call for foreign-deps
> * CLJS-1942: Self-host: `cljs.env.macros` and `cljs.analyzer.macros` can't be 
> loaded
> * CLJS-1935: When calling cljs.spec/valid?, subsequent predicates of 
> cljs.spec/and are evaluated even when early predicate is unsatisfied

-- 
Note that posts from new members are moderated - please be patient with your 
first post.
--- 
You received this message because you are subscribed to the Google Groups 
"ClojureScript" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojurescript+unsubscr...@googlegroups.com.
To post to this group, send email to clojurescript@googlegroups.com.
Visit this group at https://groups.google.com/group/clojurescript.


[ClojureScript] Re: [ANN] 2016 State of Clojure Community Survey

2017-02-05 Thread Rangel Spasov
Looking forward to the results! :) 

On Monday, December 12, 2016 at 6:43:58 AM UTC-8, Alex Miller wrote:
> It's time for the annual State of Clojure Community survey!
> 
> If you are a user of Clojure, ClojureScript, or ClojureCLR, we are greatly 
> interested in your responses to the following survey:
> 
> https://www.surveymonkey.com/r/clojure2016
> 
> The survey contains four pages:
> 
> 1. General questions applicable to any user of Clojure, ClojureScript, or 
> ClojureCLR
> 2. Questions specific to the JVM Clojure (skip if not applicable)
> 3. Questions specific to ClojureScript (skip if not applicable)
> 4. Final comments
> 
> The survey will close December 23rd. We will release all of the data and our 
> analysis in January. We are greatly appreciative of your input!
> 
> If you have any questions, please let me know.
> 
> Alex Miller

-- 
Note that posts from new members are moderated - please be patient with your 
first post.
--- 
You received this message because you are subscribed to the Google Groups 
"ClojureScript" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojurescript+unsubscr...@googlegroups.com.
To post to this group, send email to clojurescript@googlegroups.com.
Visit this group at https://groups.google.com/group/clojurescript.


[ClojureScript] Re: ANN: ClojureScript 1.9.293

2016-10-19 Thread Rangel Spasov
Works on our Cljs + React Native + om.next iOS app - thanks everyone 
involved! 

P.S.
For anyone using Om.next: make sure to bump to "1.0.0-alpha47".

On Wednesday, October 19, 2016 at 11:30:01 AM UTC-7, David Nolen wrote:
>
> ClojureScript, the Clojure compiler that emits JavaScript source code.
>
> README and source code: https://github.com/clojure/clojurescript
>
> Leiningen dependency information:
>
> [org.clojure/clojurescript "1.9.293"]
>
> This release fixes a major issue with transit analysis caching where
> files were leaked. It also includes a very significant compiler
> enhancement thanks to Antonio Monteiro - you can now create
> ClojureScript files without declaring a namespace. This opens the door
> to making a much larger class of Clojure programs portable to
> ClojureScript. `require` and other ns related macros are now available
> granted that they appear at the top of the file. Please take careful
> note that they are not functions and cannot be used in dynamic
> situations. Still this eases writing simple scripts and the door is
> now open to finally support data literals in a comprehensive way.
>
> We also bumped the Google Closure compiler dependency. Please note
> that Closure Compiler has made breaking changes around JS module
> processing so this version of ClojureScript is pinned to this latest
> release.
>
> A huge thanks to the many people old and new that contributed to this
> release.
>
> As always, feedback is most welcome!
>
> ## 1.9.293
>
> ### Enhancements
> * CLJS-1346: Support require outside of ns
>
> ### Changes
> * CLJS-1762: Bump Closure Compiler, refactor module support
> * CLJS-1658: testing for protocol membership may return false positives
> * CLJS-1536: REPL def symbol init collision
> * CLJS-1805: Source map should take false
> * CLJS-1804: Self-host: process namespace side-effects for new require 
> without NS
> * CLJS-1803: Use new require capability in REPLs
> * CLJS-1796: Measure Google Closure specific optimization time
> * CLJS-1782: Self-host: allow namespaces to require their own macros
> * CLJS-1563: :source-map option to cljs.build.api/build should take nil
> * CLJS-1785: Warn on reference to js/foo shadowed by local binding
>
> ### Fixes
> * make String an implicit ns like Math. revert char? and clarify 
> docstring. add unit tests for char?
> * fix cljs.spec.test/check docstring
> * CLJS-1826: Self-host: load-deps doesn't honor `:reload` and `reload-all`
> * CLJS-1825: :source-map error when passing `false` under simple 
> optimizations
> * CLJS-1821: `add-preloads` should only touch sources if `:preloads` 
> option specified
> * CLJS-1814: Move docstrings for require, etc. from `cljs.repl` to their 
> new definitions in `cljs.core`
> * CLJS-1809: Add 0/1 arity to `into`
> * CLJS-1824: transit cache feature leaks files
> * CLJS-1294: Let macroexpand(-1) accept any quoted argument.
> * CLJS-1818: (hash false) returns different value from Clojure
> * CLJS-1817: Strange result when assoc'ing 0 to persistent hash map
> * CLJS-1815: Fix failing analyzer tests
> * follow-up on CLJS-460 defmulti ignores optional :hierarchy argument
> * CLJS-1807: Better error messages for `ns*` calls
> * CLJS-1802: Generated namespaces should be of the form 
> `cljs.user.file`
> * CLJ-1935: Use multimethod dispatch value method lookup to take 
> hierarchies into account in multi-spec
> * CLJS-1682 :foreign-libs with module conversion does not works properly 
> if it is used form deps.cljs
> * CLJS-1710: spec/double-in not implemented
> * CLJS-1787: Make cljs.spec explain pluggable
> * CLJS-1781: Add cljs.hash-map-test to self-parity tests
> * CLJS-1788: Port CLJ-2004: include retag in multi-spec form
> * CLJS-1765: Empty iterator for hash maps with nil key
> * CLJS-1784: nth doesn't throw on strings or arrays
> * CLJS-1773: Self-host: Don't resolve unqualified symbols / keywords with 
> $macros
> * CLJS-1770: goog-defines broken for integers
> * CLJS-1600: Destructuring defprotocol fn args causes defrecord impls to 
> silently fail
> * CLJS-1335: resolve-macro-var: information missing for macros
> * CLJS-1633: Improve error associated with invalid foreign-libs :file path
> * CLJS-1775: `get` with `nil` returns as if `get` with `0`
> * CLJS-1780: Records without extmaps fail to iterate
> * CLJS-1774: Self-host: Report filenames in warns in test-self-parity
> * CLJS-1779: keyword 2-arity constructor accepts anything for both 
> parameters which leads to different hashing
>
>

-- 
Note that posts from new members are moderated - please be patient with your 
first post.
--- 
You received this message because you are subscribed to the Google Groups 
"ClojureScript" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojurescript+unsubscr...@googlegroups.com.
To post to this group, send email to clojurescript@googlegroups.com.
Visit this group at https://groups.google.com/group/clojurescript.