Skip to content

Commit

Permalink
1.0.1
Browse files Browse the repository at this point in the history
  • Loading branch information
cemerick committed Dec 12, 2013
1 parent 5617e66 commit 1e77137
Show file tree
Hide file tree
Showing 9 changed files with 36 additions and 35 deletions.
40 changes: 20 additions & 20 deletions README.md
Expand Up @@ -7,12 +7,12 @@ to install and allows you to configure the ClojureScript compiler from within yo


Beyond basic compiler support, lein-cljsbuild can optionally help with a few other things: Beyond basic compiler support, lein-cljsbuild can optionally help with a few other things:


* [Launching REPLs for interactive development] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/doc/REPL.md) * [Launching REPLs for interactive development] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/doc/REPL.md)
* [Launching ClojureScript tests] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/doc/TESTING.md) * [Launching ClojureScript tests] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/doc/TESTING.md)
* [Sharing code between Clojure and ClojureScript] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/doc/CROSSOVERS.md) * [Sharing code between Clojure and ClojureScript] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/doc/CROSSOVERS.md)


The latest version of lein-cljsbuild is `1.0.1-SNAPSHOT`. The latest version of lein-cljsbuild is `1.0.1`.
[See the release notes here.](https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/doc/RELEASE-NOTES.md) [See the release notes here.](https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/doc/RELEASE-NOTES.md)


## Requirements ## Requirements


Expand All @@ -27,7 +27,7 @@ file in the `:plugins` section:


```clj ```clj
(defproject lein-cljsbuild-example "1.2.3" (defproject lein-cljsbuild-example "1.2.3"
:plugins [[lein-cljsbuild "1.0.1-SNAPSHOT"]]) :plugins [[lein-cljsbuild "1.0.1"]])
``` ```


In addition, _you should add an explicit ClojureScript dependency to your In addition, _you should add an explicit ClojureScript dependency to your
Expand All @@ -44,15 +44,15 @@ can use lein-cljsbuild with any ClojureScript version.
## Just Give Me a Damned Example Already! ## Just Give Me a Damned Example Already!


See the See the
[example-projects] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/example-projects) [example-projects] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/example-projects)
directory for a couple of simple examples of how to use lein-cljsbuild. The directory for a couple of simple examples of how to use lein-cljsbuild. The
[simple project] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/example-projects/simple) [simple project] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/example-projects/simple)
shows a dead-simple "compile only" configuration, which is a good place to start. The shows a dead-simple "compile only" configuration, which is a good place to start. The
[advanced project] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/example-projects/advanced) [advanced project] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/example-projects/advanced)
contains examples of how to use the extended features of the plugin. contains examples of how to use the extended features of the plugin.


Also, see the Also, see the
[sample.project.clj] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/sample.project.clj) [sample.project.clj] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/sample.project.clj)
file for an exhaustive list of all options supported by lein-cljsbuild. file for an exhaustive list of all options supported by lein-cljsbuild.


## Basic Configuration ## Basic Configuration
Expand All @@ -62,7 +62,7 @@ of your `project.clj` file. A simple project might look like this:


```clj ```clj
(defproject lein-cljsbuild-example "1.2.3" (defproject lein-cljsbuild-example "1.2.3"
:plugins [[lein-cljsbuild "1.0.1-SNAPSHOT"]] :plugins [[lein-cljsbuild "1.0.1"]]
:cljsbuild { :cljsbuild {
:builds [{ :builds [{
; The path to the top-level ClojureScript source directory: ; The path to the top-level ClojureScript source directory:
Expand All @@ -76,7 +76,7 @@ of your `project.clj` file. A simple project might look like this:
``` ```


For an exhaustive list of the configuration options supported by lein-cljsbuild, see the For an exhaustive list of the configuration options supported by lein-cljsbuild, see the
[sample.project.clj] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/sample.project.clj) [sample.project.clj] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/sample.project.clj)
file. file.


## Basic Usage ## Basic Usage
Expand Down Expand Up @@ -127,7 +127,7 @@ the ClojureScript as well if enabled.
``` ```


If you are using the If you are using the
[crossovers] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/doc/CROSSOVERS.md) [crossovers] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/doc/CROSSOVERS.md)
feature, and want the `:crossover-path` included in the JAR file, add this entry to your feature, and want the `:crossover-path` included in the JAR file, add this entry to your
top-level `:cljsbuild` configuration: top-level `:cljsbuild` configuration:


Expand All @@ -143,7 +143,7 @@ and will build all of them in parallel:


```clj ```clj
(defproject lein-cljsbuild-example "1.2.3" (defproject lein-cljsbuild-example "1.2.3"
:plugins [[lein-cljsbuild "1.0.1-SNAPSHOT"]] :plugins [[lein-cljsbuild "1.0.1"]]
:cljsbuild { :cljsbuild {
:builds [ :builds [
{:source-paths ["src-cljs-main"] {:source-paths ["src-cljs-main"]
Expand All @@ -161,7 +161,7 @@ only that one:


```clj ```clj
(defproject lein-cljsbuild-example "1.2.3" (defproject lein-cljsbuild-example "1.2.3"
:plugins [[lein-cljsbuild "1.0.1-SNAPSHOT"]] :plugins [[lein-cljsbuild "1.0.1"]]
:cljsbuild { :cljsbuild {
:builds [ :builds [
{:source-paths ["src-cljs-main"] {:source-paths ["src-cljs-main"]
Expand All @@ -178,7 +178,7 @@ them as a map instead of a vector:


```clj ```clj
(defproject lein-cljsbuild-example "1.2.3" (defproject lein-cljsbuild-example "1.2.3"
:plugins [[lein-cljsbuild "1.0.1-SNAPSHOT"]] :plugins [[lein-cljsbuild "1.0.1"]]
:cljsbuild { :cljsbuild {
:builds { :builds {
:main :main
Expand All @@ -194,27 +194,27 @@ You can also build multiple configurations at once:
$ lein cljsbuild auto main other $ lein cljsbuild auto main other


See the See the
[example-projects/advanced] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/example-projects/advanced) [example-projects/advanced] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/example-projects/advanced)
directory for a working example of a project that uses this feature. directory for a working example of a project that uses this feature.


## REPL Support ## REPL Support


Lein-cljsbuild has built-in support for launching ClojureScript REPLs in a variety Lein-cljsbuild has built-in support for launching ClojureScript REPLs in a variety
of ways. See the of ways. See the
[REPL documentation] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/doc/REPL.md) [REPL documentation] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/doc/REPL.md)
for more details. for more details.


## Testing Support ## Testing Support


Lein-cljsbuild has built-in support for running external ClojureScript test processes. See the Lein-cljsbuild has built-in support for running external ClojureScript test processes. See the
[testing documentation] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/doc/TESTING.md) [testing documentation] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/doc/TESTING.md)
for more details. for more details.


## Sharing Code Between Clojure and ClojureScript ## Sharing Code Between Clojure and ClojureScript


Sharing code with lein-cljsbuild is accomplished via the configuration Sharing code with lein-cljsbuild is accomplished via the configuration
of "crossovers". See the of "crossovers". See the
[crossovers documentation] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/doc/CROSSOVERS.md) [crossovers documentation] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/doc/CROSSOVERS.md)
for more details. for more details.


## ClojureScript Version ## ClojureScript Version
Expand Down
3 changes: 2 additions & 1 deletion cljs-compat/src/cljsbuild/compat.clj
@@ -1,7 +1,8 @@
(ns cljsbuild.compat (ns cljsbuild.compat
(:use clojure.test)) (:use clojure.test))


(def matrix {"1.0.1-SNAPSHOT" {:cljs ["0.0-2014"]} (def matrix {"1.0.1" {:cljs ["0.0-2014"]}
"1.0.1-SNAPSHOT" {:cljs ["0.0-2014"]}
"1.0.0" {:cljs ["0.0-2014"]} "1.0.0" {:cljs ["0.0-2014"]}
"1.0.0-SNAPSHOT" {:cljs ["0.0-2014"]} "1.0.0-SNAPSHOT" {:cljs ["0.0-2014"]}
"1.0.0-alpha2" {:cljs ["0.0-2014"]}}) "1.0.0-alpha2" {:cljs ["0.0-2014"]}})
Expand Down
2 changes: 1 addition & 1 deletion doc/CROSSOVERS.md
Expand Up @@ -35,7 +35,7 @@ And your `project.clj` file looks like this:


```clj ```clj
(defproject lein-cljsbuild-example "1.2.3" (defproject lein-cljsbuild-example "1.2.3"
:plugins [[lein-cljsbuild "1.0.1-SNAPSHOT"]] :plugins [[lein-cljsbuild "1.0.1"]]
:source-paths ["src-clj"] :source-paths ["src-clj"]
:cljsbuild { :cljsbuild {
; Each entry in the :crossovers vector describes a Clojure namespace ; Each entry in the :crossovers vector describes a Clojure namespace
Expand Down
4 changes: 2 additions & 2 deletions doc/REPL.md
Expand Up @@ -60,7 +60,7 @@ between them. To configure a launch preset, add an entry to the `:repl-launch-c


```clj ```clj
(defproject lein-cljsbuild-example "1.2.3" (defproject lein-cljsbuild-example "1.2.3"
:plugins [[lein-cljsbuild "1.0.1-SNAPSHOT"]] :plugins [[lein-cljsbuild "1.0.1"]]
:cljsbuild { :cljsbuild {
:repl-listen-port 9000 :repl-listen-port 9000
:repl-launch-commands :repl-launch-commands
Expand Down Expand Up @@ -99,7 +99,7 @@ treated as an option map. Currently, the only supported options are
``` ```


For more ideas on how to use `repl-launch`, take a look at the For more ideas on how to use `repl-launch`, take a look at the
[advanced example project] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/example-projects/advanced) [advanced example project] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/example-projects/advanced)
It has several examples of useful launch commands, with descriptions in its README. It has several examples of useful launch commands, with descriptions in its README.
Note that, in particular, the possibilities with Note that, in particular, the possibilities with
[PhantomJS] (http://www.phantomjs.org) [PhantomJS] (http://www.phantomjs.org)
Expand Down
8 changes: 4 additions & 4 deletions doc/TESTING.md
Expand Up @@ -7,7 +7,7 @@ test:


```clj ```clj
(defproject lein-cljsbuild-example "1.2.3" (defproject lein-cljsbuild-example "1.2.3"
:plugins [[lein-cljsbuild "1.0.1-SNAPSHOT"]] :plugins [[lein-cljsbuild "1.0.1"]]
:cljsbuild { :cljsbuild {
:test-commands :test-commands
{"my-test" ["phantomjs" "phantom/unit-test.js" "..."]}) {"my-test" ["phantomjs" "phantom/unit-test.js" "..."]})
Expand Down Expand Up @@ -38,18 +38,18 @@ browser to do, except it does not have a GUI. PhantomJS can be automated via Ja
and thus is convenient to use for running automated tests. and thus is convenient to use for running automated tests.


The The
[advanced example project] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/example-projects/advanced) [advanced example project] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/example-projects/advanced)
contains an example of how to use PhantomJS for running ClojureScript tests. There are several contains an example of how to use PhantomJS for running ClojureScript tests. There are several
components that come together to make this work: components that come together to make this work:


1. A `:builds` entry dedicated to the test code in the `test-cljs` directory. This compiles 1. A `:builds` entry dedicated to the test code in the `test-cljs` directory. This compiles
the unit tests into JavaScript (so that it they can be run by PhantomJS). the unit tests into JavaScript (so that it they can be run by PhantomJS).


2. A 2. A
[static HTML page] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/example-projects/advanced/resources/private/html/unit-test.html) [static HTML page] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/example-projects/advanced/resources/private/html/unit-test.html)
with a `<script>` tag that will pull in the compiled unit test code when the page is loaded. with a `<script>` tag that will pull in the compiled unit test code when the page is loaded.


3. A `:test-commands` entry that runs PhantomJS, passing it 3. A `:test-commands` entry that runs PhantomJS, passing it
[a simple script] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1-SNAPSHOT/example-projects/advanced/phantom/unit-test.js) [a simple script] (https://github.com/emezeske/lein-cljsbuild/blob/1.0.1/example-projects/advanced/phantom/unit-test.js)
. This script directs PhantomJS to load the static HTML page, and once it's loaded, . This script directs PhantomJS to load the static HTML page, and once it's loaded,
to call the ClojureScript unit test entry point. to call the ClojureScript unit test entry point.
4 changes: 2 additions & 2 deletions example-projects/advanced/project.clj
@@ -1,12 +1,12 @@
(defproject cljsbuild-example-advanced "1.0.1-SNAPSHOT" (defproject cljsbuild-example-advanced "1.0.1"
:description "An advanced example of how to use lein-cljsbuild" :description "An advanced example of how to use lein-cljsbuild"
:source-paths ["src-clj"] :source-paths ["src-clj"]
:dependencies [[org.clojure/clojure "1.5.1"] :dependencies [[org.clojure/clojure "1.5.1"]
[org.clojure/clojurescript "0.0-2014" [org.clojure/clojurescript "0.0-2014"
:exclusions [org.apache.ant/ant]] :exclusions [org.apache.ant/ant]]
[compojure "1.1.6"] [compojure "1.1.6"]
[hiccup "1.0.4"]] [hiccup "1.0.4"]]
:plugins [[lein-cljsbuild "1.0.1-SNAPSHOT"] :plugins [[lein-cljsbuild "1.0.1"]
[lein-ring "0.8.7"]] [lein-ring "0.8.7"]]
; Enable the lein hooks for: clean, compile, test, and jar. ; Enable the lein hooks for: clean, compile, test, and jar.
:hooks [leiningen.cljsbuild] :hooks [leiningen.cljsbuild]
Expand Down
4 changes: 2 additions & 2 deletions example-projects/simple/project.clj
@@ -1,12 +1,12 @@
(defproject cljsbuild-example-simple "1.0.1-SNAPSHOT" (defproject cljsbuild-example-simple "1.0.1"
:description "A simple example of how to use lein-cljsbuild" :description "A simple example of how to use lein-cljsbuild"
:source-paths ["src-clj"] :source-paths ["src-clj"]
:dependencies [[org.clojure/clojure "1.5.1"] :dependencies [[org.clojure/clojure "1.5.1"]
[org.clojure/clojurescript "0.0-2014" [org.clojure/clojurescript "0.0-2014"
:exclusions [org.apache.ant/ant]] :exclusions [org.apache.ant/ant]]
[compojure "1.1.6"] [compojure "1.1.6"]
[hiccup "1.0.4"]] [hiccup "1.0.4"]]
:plugins [[lein-cljsbuild "1.0.1-SNAPSHOT"] :plugins [[lein-cljsbuild "1.0.1"]
[lein-ring "0.8.7"]] [lein-ring "0.8.7"]]
:cljsbuild { :cljsbuild {
:builds [{:source-paths ["src-cljs"] :builds [{:source-paths ["src-cljs"]
Expand Down
4 changes: 2 additions & 2 deletions plugin/project.clj
@@ -1,4 +1,4 @@
(defproject lein-cljsbuild "1.0.1-SNAPSHOT" (defproject lein-cljsbuild "1.0.1"
:description "ClojureScript Autobuilder Plugin" :description "ClojureScript Autobuilder Plugin"
:url "http://github.com/emezeske/lein-cljsbuild" :url "http://github.com/emezeske/lein-cljsbuild"
:license :license
Expand All @@ -12,6 +12,6 @@
:dev { :dev {
:dependencies [ :dependencies [
[midje "1.5.1"] [midje "1.5.1"]
[cljsbuild "1.0.1-SNAPSHOT"]] [cljsbuild "1.0.1"]]
:plugins [[lein-midje "2.0.4"]]}} :plugins [[lein-midje "2.0.4"]]}}
:eval-in-leiningen true) :eval-in-leiningen true)
2 changes: 1 addition & 1 deletion support/project.clj
@@ -1,4 +1,4 @@
(defproject cljsbuild "1.0.1-SNAPSHOT" (defproject cljsbuild "1.0.1"
:description "ClojureScript Autobuilder" :description "ClojureScript Autobuilder"
:url "http://github.com/emezeske/lein-cljsbuild" :url "http://github.com/emezeske/lein-cljsbuild"
:license :license
Expand Down

0 comments on commit 1e77137

Please sign in to comment.