Skip to content

Commit

Permalink
AOT compile tools.reader for version guarantees
Browse files Browse the repository at this point in the history
Older versions of clojure.tools.reader increase all line numbers by one.
This results in odd looking reports where you have comments or blank
lines showing as missing test coverage or weirder still as being covered
if you have one of these older versions of clojure.tools.reader being
pulled in transitively by another dependency.

AOT compilation of tools.reader is necessary because configuring
:exclusions for tools.reader on those dependencies which pull in the old
version is ineffective when that dependency is using AOT (case in point:
riemann). Unfortunately leiningen isn't doing the smart thing of using
the newer but uncompiled version of a dependency yet. The only work
around is fragile and untenable with a CI service. See the following
github issues for more info:
technomancy/leiningen#1879
technomancy/leiningen#1858
  • Loading branch information
dlobue committed Jun 20, 2015
1 parent 4290dde commit af9f335
Showing 1 changed file with 1 addition and 0 deletions.
1 change: 1 addition & 0 deletions cloverage/project.clj
Expand Up @@ -6,6 +6,7 @@
:url "https://www.github.com/lshift/cloverage"
:tag "HEAD"}
:main ^:skip-aot cloverage.coverage
:aot [clojure.tools.reader]
:license {:name "Eclipse Public License - v 1.0"
:url "http://www.eclipse.org/legal/epl-v10.html"
:distribution :repo
Expand Down

0 comments on commit af9f335

Please sign in to comment.