Permalink
Commits on Nov 7, 2012
  1. Update boostrap & POM with new dependencies for next release

    * In the pom.xml template:
      * Google Closure Compiler r2180
      * Google Closure Library r2029
      * Mozilla Rhino 1.7R4
    
    * In script/bootstrap:
      * Google Closure Library r2029
      * Already uses latest Google Closure Compiler (r2180)
    stuartsierra committed Nov 7, 2012
Commits on Nov 3, 2012
Commits on Nov 2, 2012
  1. bring top level let test back

    David Nolen committed Nov 2, 2012
  2. CLJS-401: gensym let names in statement context in the emitter

    This fixes a bug where two subsequent lets could overwrite each other's names
    bendlas committed with David Nolen Nov 2, 2012
  3. revert Brandon Bloom's patch for CLJS-401

    David Nolen committed Nov 2, 2012
Commits on Oct 29, 2012
  1. support generating basic GClosure source maps. This patch does not ha…

    …ndle
    
    merging information generated by CLJS compiler and the GClosure compiler.
    David Nolen committed Oct 29, 2012
Commits on Oct 28, 2012
  1. add CLJS-411 test cases

    David Nolen committed Oct 28, 2012
Commits on Oct 27, 2012
  1. CLJS-408: Include :form key on fn :methods

    brandonbloom committed with David Nolen Sep 2, 2012
  2. CLJS-409: Extract emit-provide function

    brandonbloom committed with David Nolen Oct 27, 2012
  3. tests for CLJS-401

    David Nolen committed Oct 27, 2012
  4. CLJS-401: Wrap top-level forms in a function scope.

    brandonbloom committed with David Nolen Oct 27, 2012
Commits on Oct 23, 2012
  1. CLJS-403 REPL is changed to analyze forms in an :expr context.

    Thereby making explicit, that the REPL actually compiles each input in an :expr context; in a wrapper form, to capture the return value. When an exception is printed, the REPL attaches the js compiled from the original.
    
    Several builtin forms, however, don't get emitted in a :statement context, which could lead to apparent inconsistencies when looking at the js on a stacktrace.
    bendlas committed with David Nolen Oct 22, 2012
  2. CLJS-397 var reads in a :statement context get omitted

    This is done so that google closure can optimize away unused deftypes.
    bendlas committed with David Nolen Oct 22, 2012
  3. Add the nodejs dependency by hand to enforce providing it [cljs-395]

    Force nodejs into the dependencies check; leave nodejscli tacked on to the end [cljs-395]
    ohpauleez committed with David Nolen Oct 20, 2012
Commits on Oct 22, 2012
  1. Two simple tests for with-out-str

    ohpauleez committed with David Nolen Oct 22, 2012
  2. *print-fn* is now dynamic to support with-out-str

    ohpauleez committed with David Nolen Oct 22, 2012
Commits on Oct 20, 2012
Commits on Oct 18, 2012
  1. CLJS-393: Bugfixes for PersistentTreeMap: sorted-map-by and -sorted-s…

    …eq-from
    ejlo committed with David Nolen Oct 18, 2012
Commits on Oct 17, 2012
  1. added :doc entries for ns and def

    franks42 committed with David Nolen Oct 16, 2012
  2. CLJS-368: Make empty? faster for nil calls.

    edtsech committed with David Nolen Oct 16, 2012
Commits on Oct 16, 2012
  1. CLJS-390: exclude macro files from analysis

    Tom Jack committed with David Nolen Oct 8, 2012
  2. CLJS-369: Capture variable shadows in analyzer; avoid

     gensyms.
    
    AST Changes
    
    * Anywhere a binding was introduced for a local used to be a symbol,
      now it is a map with a :name key and potentially a :shadow key.
    
    * Bindings vectors are no longer alternating symbols, then init maps.
      Instead, the are a vector of maps of the shape described for locals
      plus an :init key.
    
    * The :gthis key for functions has been replaced with :type, which
      is the symbol describing the type name of the enclosing deftype form.
    
    * recur frames now expose :params as binding maps, instead of :names
    
    Benefits:
    
    * Shadowed variables are now visible to downstream AST transforms.
    
    * :tag, :mutable, and other metadata are now uniform across ops
    
    * Eliminates usages of gensym inside the analyzer, which was a source
      of state that made the analyzer impossible to use for some
      transformations of let, letfn, etc which require re-analyzing forms.
    
    * Removes JavaScript shadowing semantics from the analyze phase.
    David Nolen committed Oct 16, 2012
  3. Test and fix for CLJS-383

    gfredericks committed with David Nolen Oct 5, 2012
  4. CLJS-388: expose output-wrapper compiler option

    David Nolen committed Oct 16, 2012
  5. Bugfix PersistentTreeSet lookup

    ejlo committed with David Nolen Oct 15, 2012
  6. CLJS-389: Compiler emits throw string

    David Nolen committed Oct 16, 2012
  7. remove IPrintable from defrecord

    David Nolen committed Oct 16, 2012
Commits on Oct 12, 2012
  1. compiler warns on deprecated function and protocol use

    If a deprecated function is invoked or a deprected protocol is
    implemented the compiler will issue a warning.
    
    These warnings can be suppressed by binding *cljs-warn-fn-deprecated*
    to false or by attaching the ^:deprecation-nowarn metadata to the
    invocation form or to the protocol symbol.
    netguy204 committed with David Nolen Oct 12, 2012
Commits on Oct 9, 2012
  1. CLJS-391: add some missing IEmptyableCollection impls

    Tom Jack committed with David Nolen Oct 8, 2012
  2. Hashbang/Shebang updated use env; Fixes #CLJS-385

    ohpauleez committed with David Nolen Sep 28, 2012