Permalink
Browse files

new file: .travis.yml

Added to support travis-ci.org testing

modified:   project.clj
Updated to 1.0.3 and now depends on Clojure 1.5.1 which addresses memleak in 1.5.0

modified:   src/clj/iota.clj
Modified to pull in fjinvoke, fjfork, fjjoin from core.reducers just once per smee's comment.
  • Loading branch information...
1 parent e615140 commit 4ae711d956417a371d708f205e3fa93dacb1badd @thebusby committed Mar 12, 2013
Showing with 15 additions and 5 deletions.
  1. +5 −0 .travis.yml
  2. +2 −2 project.clj
  3. +8 −3 src/clj/iota.clj
View
5 .travis.yml
@@ -0,0 +1,5 @@
+language: clojure
+jdk:
+ - openjdk6
+ - openjdk7
+ - oraclejdk7
View
4 project.clj
@@ -1,9 +1,9 @@
-(defproject iota "1.0.2"
+(defproject iota "1.0.3"
:description "Allows Clojure's reducers to operate over mmap()'ed text files"
:url "https://github.com/thebusby/iota"
:license {:name "Eclipse Public License"
:url "http://www.eclipse.org/legal/epl-v10.html"}
- :dependencies [[org.clojure/clojure "1.5.0"]]
+ :dependencies [[org.clojure/clojure "1.5.1"]]
:source-paths ["src/clj"]
:java-source-paths ["src/java"]
:source-path "src/clj"
View
11 src/clj/iota.clj
@@ -33,6 +33,11 @@
;; Code to enable reducers;
;; ;;; ;; ;;; ;; ;;; ;; ;;; ;; ;;; ;; ;;; ;; ;;; ;; ;;; ;; ;;;
+;; Bind to core.reducer's private ForkJoin functions
+(def fjinvoke #'r/fjinvoke)
+(def fjfork #'r/fjfork)
+(def fjjoin #'r/fjjoin)
+
;; Implement CollFold for FileVector
;; Note: copied+modified from clojure.core.reducers/foldvec
@@ -47,11 +52,11 @@
v1 (.subvec v 0 split)
v2 (.subvec v split (count v))
fc (fn [child] #(foldvec child n combinef reducef))]
- (#'r/fjinvoke
+ (fjinvoke
#(let [f1 (fc v1)
t2 (r/fjtask (fc v2))]
- (#'r/fjfork t2)
- (combinef (f1) (#'r/fjjoin t2)))))))
+ (fjfork t2)
+ (combinef (f1) (fjjoin t2)))))))
(extend-protocol r/CollFold
iota.FileVector

0 comments on commit 4ae711d

Please sign in to comment.