[ANN] clojuresque 1.6.0 released

55 views
Skip to first unread message

Meikel Brandmeyer

unread,
Dec 25, 2013, 5:50:25 PM12/25/13
to cloju...@googlegroups.com, clojur...@googlegroups.com
Finally! It's done! There it is! v1.6.0!

After a long struggle I managed to get the new release out of the door.
There are many fixes and changes under the hood.

A lot of changes went in to make the clojure part blend even smoother
into the gradle environment. Dependencies on gradle interna were removed
where possible. Robustness against configuration changes was greatly
increased. This should help those migrating an existing build, eg. from
leiningen. Naming of task classes was harmonized with gradle conventions.

Also the plugin was split into actually several plugins as a preparation
for the ClojureScript plugin (name: scriptoresque), I'm working on. But
the best part: as long as you don't drop into the low-level parts of the
plugin these changes should all be completely transparent to you. Just
update the meta plugin version and get all the new goodies. (But you now
also have the choice to just apply those plugins you actually only want.)

The sub-plugins are all in the clojuresque group on clojars:
https://clojars.org/groups/clojuresque

The sub plugins are those starting in clojuresque-*. (Naming was also
unified!) You can ignore the *-runtime packages. They are purely internal.

The following are the user observable changes.

* watchTasks task to automatically run tasks periodically.
* clojureRepl task to start a nrepl server for the project
* junit report integration for tests (patch by Paudi Moriarty)
* update of codox to v0.6.6 for clojuredoc task
* configuration map for codox options

Here an (incomplete) example build which demonstrates the new features:

buildscript {
dependencies {
classpath "clojuresque:clojuresque:1.6.0"
}
}

apply plugin: "clojure"

dependencies {
compile "org.clojure:clojure:1.5.1"

// Note: this is your choice! W/o it the nrepl task doesn't work.
development "org.clojure:tools.nrepl:0.2.3"
}

clojureRepl {
// default: 7888
port = 12345
}

clojureTest {
junit = true
}

clojuredoc {
codox = [
// Note: these keys will be translated for you to snake case.
srcDirUri: "https://some.where/"
srcLinenumAnchorPrefix: "L"
// Note: include/exclude are not supported, this is done via
// the task or the source set
]
}

watchTasks {
tasks = [ "clojureTest", "hypotheticalGenerateCSSTask" ]
// time in msec, default 5s
pollingInterval = 2000
}

Open issues:
* documentation generation works for me, but is not well tested in
problem cases
* test integration still needs work
* tests for the plugins are still virtually non-existent
* documentation for the plugins is still virtually non-existent/outdated

If you can help out with any of these points, please do so!

I tested various combinations of settings and the plugins. But mainly in
a manual fashion. So please help me testing things a bit, before you
switch your organisation and everything goes southwards. Getting this
more robust has a high priority for the future.

Thanks to everyone who contributed to this release!

Meikel

Artifacts:
https://clojars.org/clojuresque
https://clojars.org/clojuresque/clojuresque-base
https://clojars.org/clojuresque/clojuresque-nrepl
https://clojars.org/clojuresque/clojuresque-extras
https://clojars.org/clojuresque/clojuresque-clojars

Sources:
https://bitbucket.org/clojuresque/clojuresque
https://bitbucket.org/clojuresque/base
https://bitbucket.org/clojuresque/nrepl
https://bitbucket.org/clojuresque/extras
https://bitbucket.org/clojuresque/clojars

Github mirrors are available.

--
Meikel Brandmeyer
Clojure Trainings
Kastellstraße 3
63526 Erlensee
http://kotka.de
USt.-Id: DE 285 667 417

signature.asc
Reply all
Reply to author
Forward
0 new messages