Add lein-release config

Add lein-release config

--- project.clj
+++ project.clj
@@ -4,6 +4,7 @@
   :url "https://github.com/devth/yetibot.core"
   :license {:name "Eclipse Public License"
             :url "http://www.eclipse.org/legal/epl-v10.html"}
+  :lein-release {:deploy-via :clojars}
   :resource-paths ["config"]
   :aot [yetibot.core.init]
   :main yetibot.core.init


|317|testing story

|317|testing story

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject stonecutter "0.1.0-SNAPSHOT"
+(defproject stonecutter "0.1.0-SNAPSHOT" ;test for story #317
   :description "A D-CENT project: an easily deployable oauth server for small organisations."
   :url "https://stonecutter.herokuapp.com"
   :min-lein-version "2.0.0"


Revert to snapshot version.

Revert to snapshot version.

--- project.clj
+++ project.clj
@@ -1,5 +1,5 @@
-(defproject cli4clj "1.7.4"
-;(defproject cli4clj "1.7.5-SNAPSHOT"
+;(defproject cli4clj "1.7.4"
+(defproject cli4clj "1.7.5-SNAPSHOT"
   :description "Create simple interactive CLIs for Clojure applications."
   :url "https://github.com/ruedigergad/cli4clj"
   :license {:name "Eclipse Public License"


Version 0.2.1-SNAPSHOT

Version 0.2.1-SNAPSHOT

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject qualityclj "0.2.0"
+(defproject qualityclj "0.2.1-SNAPSHOT"
   :description "Assess Clojure libraries based on a number of different metrics."
   :url "https://github.com/quality-clojure/qualityclj"


Added more top-level aliases for convenience.

--- project.clj
+++ project.clj
@@ -27,5 +27,7 @@
                                         "virtual-product-app"
                                         "es-spatial-plugin"]}}}
   :aliases {
+    "kibit" ["modules" "kibit"]
+    "eastwood" ["modules" "eastwood"]
     "lint" ["modules" "lint"]})


Version 2.32.0-1-SNAPSHOT [ci skip]

Version 2.32.0-1-SNAPSHOT [ci skip]

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject clojush "2.32.0"
+(defproject clojush "2.32.0-1-SNAPSHOT"
   :description "The Push programming language and the PushGP genetic programming
                 system implemented in Clojure. See http://pushlanguage.com"
   :license {:name "Eclipse Public License"


version

version

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject antler/stencil "0.4.2"
+(defproject antler/stencil "0.4.3"
   :description "Mustache in Clojure (with blocks!)"
   :dependencies [[org.clojure/clojure "1.3.0"]
                  [scout "0.1.0"]


mark next dev iteration

mark next dev iteration

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject fudje "0.9.2"
+(defproject fudje "0.9.3-SNAPSHOT"
   :description "A small unit-testing library heavily inspired by midje."
   :url "https://github.com/jimpil/fudje"
   :license {:name "Eclipse Public License"


fix storm-project homepage url

fix storm-project homepage url

--- project.clj
+++ project.clj
@@ -1,5 +1,5 @@
 (defproject storm/storm "0.9.0-wip16"
-  :url "http://storm-project.clj"
+  :url "http://storm-project.net"
   :description "Distributed and fault-tolerant realtime computation"
   :license {:name "Eclipse Public License - Version 1.0" :url "https://github.com/nathanmarz/storm/blob/master/LICENSE.html"}
   :dependencies [[org.clojure/clojure "1.4.0"]


catchup to dev

catchup to dev

--- project.clj
+++ project.clj
@@ -12,6 +12,8 @@
                  [clj-time "0.8.0"]
                  [compojure "1.1.8"]
                  [jarohen/chord "0.4.2" :exclusions [org.clojure/clojure]]
+                 [cheshire  "5.3.1"]
+                 [org.clojure/data.xml "0.0.8"]
                  [org.clojure/core.async "0.1.346.0-17112a-alpha"]
                  [om "0.7.3"]
                  [http-kit "2.1.16"]


Prevent uberjar AOT from screwing with REPL development.

--- project.clj
+++ project.clj
@@ -44,4 +44,5 @@

    :uberjar
    {:aot :all
+    :target-path "target/uberjar"
     :main org.playasophy.wonderdome.main}})


setup profile and prep tasks

setup profile and prep tasks

--- project.clj
+++ project.clj
@@ -7,7 +7,7 @@
   :clean-targets ^{:protect false} ["resources/public/devcards" "resources/public/site" "target"]

   :test-paths ["test/server"]
-  :source-paths ["src/devcards" "src/cljs" "src/site" "script" "src/server" "src/dev"]
+  :source-paths ["src/cljs" "src/site" "src/server"]

   :dependencies [[org.clojure/clojure "1.9.0-alpha13" :scope "provided"]
                  [org.clojure/clojurescript "1.9.293" :scope "provided"]
@@ -16,18 +16,11 @@
                  [cljsjs/react-with-addons "15.2.1-0"]
                  [cljsjs/react-dom "15.2.1-0" :exclusions [cljsjs/react]]
                  [navis/untangled-client "0.6.0-SNAPSHOT" :exclusions [org.omcljs/om com.cognitect/transit-cljs cljsjs/react-dom org.clojure/tools.reader cljsjs/react]]
-
-                 [figwheel-sidecar "0.5.4-4" :exclusions [clj-time joda-time org.clojure/tools.reader] :scope "test"]
                  [bidi "2.0.9"]
                  [kibu/pushy "0.3.6"]
-                 [binaryage/devtools "0.7.0" :exclusions [cljsjs/react]]
-                 [devcards "0.2.1-4" :exclusions [org.omcljs/om cljsjs/react cljsjs/react-dom]]
-
                  [org.clojure/test.check "0.9.0"]
                  [com.rpl/specter "0.9.3"]
-                 [com.cognitect/transit-cljs "0.8.239"]
-                 [navis/untangled-spec "0.3.9" :scope "test"]
-                 [lein-doo "0.1.6" :scope "test"]]
+                 [com.cognitect/transit-cljs "0.8.239"]]

   :plugins [[lein-cljsbuild "1.1.4"]
             [lein-doo "0.1.6"]]
@@ -35,6 +28,15 @@
   :min-lein-version "2.6.0"

   :figwheel {:open-file-command "open-in-intellij"}
+
+  :prep-tasks []
+
+  :profiles {:dev {:source-paths ["src/devcards" "src/cljs" "src/site" "script" "src/server" "src/dev"]
+                   :dependencies [[navis/untangled-spec "0.3.9" :scope "test"]
+                                  [figwheel-sidecar "0.5.4-4" :exclusions [clj-time joda-time org.clojure/tools.reader] :scope "test"]
+                                  [binaryage/devtools "0.7.0" :exclusions [cljsjs/react]]
+                                  [devcards "0.2.1-4" :exclusions [org.omcljs/om cljsjs/react cljsjs/react-dom]]
+                                  [lein-doo "0.1.6" :scope "test"]]}}

   :cljsbuild {:builds
               [{:id           "devcards"


Temp dep update.

Temp dep update.

--- project.clj
+++ project.clj
@@ -27,6 +27,10 @@
     [clojusc/rfc5322 "0.4.0-SNAPSHOT"]
     [clojusc/trifl "0.2.0-SNAPSHOT"]
     [clojusc/twig "0.3.2-SNAPSHOT"]
+    ;; XXX Remove the following once the next dragon snapshot is pushed to Clojars
+    [com.datomic/clj-client "0.8.606"]
+    [com.taoensso/carmine "2.16.0"]
+    ;; XXX END
     [com.stuartsierra/component "0.3.2"]
     [dragon "0.4.0-SNAPSHOT"]
     [markdown-clj "1.0.1"]
@@ -50,7 +54,7 @@
     :posts-path-src "./posts"
     :feed-count 20
     :cli {
-      :log-level :debug
+      :log-level :info
       :log-nss [mx.roads]}}
   :profiles {
     :uberjar {:aot :all}


Bumped up the version number.

Bumped up the version number.

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject appengine-magic "0.1.4-SNAPSHOT"
+(defproject appengine-magic "0.2.0"
   :description "Google App Engine library for Clojure."
   :repositories {"maven-gae-plugin" "http://maven-gae-plugin.googlecode.com/svn/repository"}
   :dependencies [[org.clojure/clojure "1.2.0"]


Inc version to 0.2.1.

Inc version to 0.2.1.

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject fixturex "0.2.1-SNAPSHOT"
+(defproject fixturex "0.2.1"
   :description "A library of helpful test fixture macros and functions."
   :url "http://www.ryanmcg.com/fixturex/"
   :license {:name "Eclipse Public License"


Version 0.0.23

Version 0.0.23

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject pe-fp-rest "0.0.23-SNAPSHOT"
+(defproject pe-fp-rest "0.0.23"
   :description "A Clojure library providing a REST API interface on top of the fuel purchase abstractions."
   :url "https://github.com/evanspa/pe-fp-rest"
   :license {:name "MIT"


Release version 0.12.5.0.

Release version 0.12.5.0.

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject org.onyxplatform/onyx-metrics "0.12.4.1-SNAPSHOT"
+(defproject org.onyxplatform/onyx-metrics "0.12.5.0"
   :description "Instrument Onyx workflows"
   :url "https://github.com/onyx-platform/onyx-metrics"
   :license {:name "Eclipse Public License"
@@ -11,7 +11,7 @@
                              :username :env
                              :password :env
                              :sign-releases false}}
-  :dependencies [[org.onyxplatform/onyx "0.12.4"]
+  :dependencies [[org.onyxplatform/onyx "0.12.5"]
                  ^{:voom {:repo "git@github.com:onyx-platform/onyx.git" :branch "master"}}
                  [org.clojure/clojure "1.8.0"]
                  [metrics-clojure "2.8.0"]]


installing firefox

installing firefox

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject closp/lein-template "0.3.4-Snapshot-10"
+(defproject closp/lein-template "0.3.4-Snapshot-11"
   :description "An opionated webframework for clojure and clojurescript."
   :url "https://github.com/sveri/closp"
   :license {:name "Eclipse Public License"


Version bump to 0.1.0

Version bump to 0.1.0

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject ankha "0.1.0-SNAPSHOT"
+(defproject ankha "0.1.0"
   :description "FIXME: write description"
   :url "http://example.com/FIXME"
   :license {:name "Eclipse Public License"


Update to latest version of schema

Update to latest version of schema

--- project.clj
+++ project.clj
@@ -15,7 +15,7 @@
                  [ring "1.2.2"]
                  [ring-middleware-format "0.3.2" :exclusions [cheshire
                                                               org.clojure/tools.reader]]
-                 [prismatic/schema "0.2.1" :exclusions [potemkin]]
+                 [prismatic/schema "0.2.2" :exclusions [potemkin]]
                  [compojure "1.1.6"]]
   :plugins [[speclj "3.0.2"]]
   :test-paths ["spec"]


Version 1.1.1-SNAPSHOT

Version 1.1.1-SNAPSHOT

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject dda/dda-serverspec-crate "1.1.0"
+(defproject dda/dda-serverspec-crate "1.1.1-SNAPSHOT"
   :description "A crate to get facts from server nodes and test these facst against your expectation."
   :url "https://domaindrivenarchitecture.org"
   :license {:name "Apache License, Version 2.0"


(PDB-4428) Bump version to 5.2.9

(PDB-4428) Bump version to 5.2.9

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(def pdb-version "5.2.9-SNAPSHOT")
+(def pdb-version "5.2.9")
 (def clj-parent-version "1.4.3")
 (def tk-jetty9-ver "2.3.1")


Update dependencies

Update dependencies

--- project.clj
+++ project.clj
@@ -5,36 +5,36 @@

   :dependencies [[bouncer "1.0.1"]
                  [buddy "2.0.0"]
-                 [clj-time "0.15.1"]
+                 [clj-time "0.15.2"]
                  [cljs-ajax "0.8.0"]
                  [cljsjs/react-chartjs-2 "2.7.4-0" :exclusions [cljsjs/react]]
                  [compojure "1.6.1"]
                  [conman "0.8.3"]
-                 [cprop "0.1.13"]
+                 [cprop "0.1.14"]
                  [funcool/bide "1.6.0"]
-                 [luminus-immutant "0.2.4"]
+                 [luminus-immutant "0.2.5"]
                  [luminus-migrations "0.6.1"]
-                 [luminus-nrepl "0.1.5"]
+                 [luminus-nrepl "0.1.6"]
                  [metosin/ring-http-response "0.9.1"]
-                 [metosin/muuntaja "0.6.3"]
-                 [mount "0.1.15"]
+                 [metosin/muuntaja "0.6.4"]
+                 [mount "0.1.16"]
                  [org.clojure/clojure "1.10.1"]
                  [org.clojure/clojurescript "1.10.520" :scope "provided"]
                  [org.clojure/data.csv "0.1.4"]
-                 [org.clojure/tools.cli "0.4.1"]
-                 [org.clojure/tools.logging "0.4.1"]
-                 [org.postgresql/postgresql "42.2.5"]
+                 [org.clojure/tools.cli "0.4.2"]
+                 [org.clojure/tools.logging "0.5.0"]
+                 [org.postgresql/postgresql "42.2.6"]
                  [org.webjars/bootstrap "4.2.1"]
                  [org.webjars/font-awesome "5.6.3"]
                  [org.webjars/webjars-locator-jboss-vfs "0.1.0"]
                  [reagent "0.8.1" :exclusions [cljsjs/react cljsjs/react-dom]]
                  [cljsjs/react "16.9.0-0"]
                  [cljsjs/react-dom "16.9.0-0"]
-                 [reagent-utils "0.3.2"]
-                 [ring-middleware-format "0.7.2"]
+                 [reagent-utils "0.3.3"]
+                 [ring-middleware-format "0.7.4"]
                  [ring-webjars "0.2.0"]
                  [ring/ring-defaults "0.3.2"]
-                 [selmer "1.12.5"]
+                 [selmer "1.12.13"]
                  [webjure/tuck "20181204"]]

   :min-lein-version "2.0.0"
@@ -81,20 +81,18 @@
    :dev           [:project/dev :profiles/dev]
    :test          [:project/dev :project/test :profiles/test]

-   :project/dev  {:dependencies [[prone "1.6.1"]
-                                 [ring/ring-mock "0.3.2"]
+   :project/dev  {:dependencies [[prone "2019-07-08"]
+                                 [ring/ring-mock "0.4.0"]
                                  [ring/ring-devel "1.7.1"]
                                  [pjstadig/humane-test-output "0.9.0"]
                                  [binaryage/devtools "0.9.10"]
-                                 [cider/piggieback "0.4.0"]
+                                 [cider/piggieback "0.4.1"]
                                  [doo "0.1.11"]
-                                 [figwheel-sidecar "0.5.18"]]
-                  :plugins      [[com.jakemccrary/lein-test-refresh "0.23.0"]
+                                 [figwheel-sidecar "0.5.19"]]
+                  :plugins      [[com.jakemccrary/lein-test-refresh "0.24.1"]
                                  [lein-doo "0.1.11"]
-                                 [lein-figwheel "0.5.18"]
-                                 [org.clojure/clojurescript "1.10.439"]
-                                 [lein-nvd "0.6.0"]
-                                 [lein-ancient "0.6.15"]]
+                                 [lein-figwheel "0.5.19"]
+                                 [lein-nvd "1.2.0"]]
                   :cljsbuild
                   {:builds
                    {:app


Update test check

Update test check

--- project.clj
+++ project.clj
@@ -41,7 +41,6 @@
   :main ^:skip-aot icecap.core
   :target-path "target/%s"
   :profiles {:uberjar {:aot :all}
-             :dev {:dependencies [[org.clojure/test.check "0.6.2"]]
                    :aliases ^:replace {"lint" ["do"
                                                ["clean"]
                                                ["with-profile" "production" "deps" ":tree"]
@@ -49,6 +48,7 @@
                                                ["kibit"]
                                                ["bikeshed"]
                                                ["eastwood"]]}
+             :dev {:dependencies [[org.clojure/test.check "0.7.0"]]
                    :plugins [[jonase/eastwood "0.1.4"]
                              [lein-ancient "0.5.5"]
                              [lein-bikeshed "0.1.8"]


Add min-lein-version to project.clj for heroku to pickup 2.x

--- project.clj
+++ project.clj
@@ -13,4 +13,5 @@

   :source-paths ["src/clj"]
   :main potoo.system
-  :aot [potoo.system])
+  :aot [potoo.system]
+  :min-lein-version "2.0.0")


Version 1.8.1

Version 1.8.1

--- project.clj
+++ project.clj
@@ -1,6 +1,6 @@
 (def jetty-version "9.2.10.v20150310")

-(defproject puppetlabs/trapperkeeper-webserver-jetty9 "1.8.1-SNAPSHOT"
+(defproject puppetlabs/trapperkeeper-webserver-jetty9 "1.8.1"
   :description "A jetty9-based webserver implementation for use with the puppetlabs/trapperkeeper service framework."
   :url "https://github.com/puppetlabs/trapperkeeper-webserver-jetty9"
   :license {:name "Apache License, Version 2.0"


updates server deps

updates server deps

--- project.clj
+++ project.clj
@@ -3,7 +3,7 @@
   :url "https://github.com/build-canaries/nevergreen"
   :dependencies [[org.clojure/clojure "1.10.1"]
                  [ring "1.8.0" :exclusions [org.eclipse.jetty/jetty-server]]
-                 [org.eclipse.jetty/jetty-server "9.4.27.v20200227"]
+                 [org.eclipse.jetty/jetty-server "9.4.28.v20200408"]
                  [compojure "1.6.1" :exclusions [ring/ring-codec]]
                  [environ "1.1.0"]
                  [cheshire "5.10.0"]


enforce javac target to 1.8

enforce javac target to 1.8

--- project.clj
+++ project.clj
@@ -19,10 +19,10 @@
                  [org.apache.beam/beam-runners-core-java "2.38.0"]
                  [org.apache.kafka/kafka-clients "3.1.0"]
                  [superstring "3.1.0"]]
+  :pedantic? false
   :source-paths ["src/clj"]
-  :pedantic? false
   :java-source-paths ["src/java"]
-  :javac-options ["-Xlint:unchecked"]
+  :javac-options ["-Xlint:unchecked" "-source" "1.8" "-target" "1.8"]
   :deploy-repositories {"releases" {:url "https://repo.clojars.org"}}
   :profiles {:dev {:dependencies [[junit/junit "4.13.2"]
                                   [me.raynes/fs "1.4.6"]


vbump

vbump

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject mirror "0.1.1"
+(defproject mirror "0.2.0"
   :description "isomorphic clojure/script web apps"
   :main mirror.core
   :url "https://github.com/bhurlow/mirror"


Using CTIM version 0.4.9c

Using CTIM version 0.4.9c

--- project.clj
+++ project.clj
@@ -42,7 +42,7 @@
                  ;; Schemas
                  [prismatic/schema ~schema-version]
                  [metosin/schema-tools ~schema-tools-version]
-                 [threatgrid/ctim "0.4.9b"]
+                 [threatgrid/ctim "0.4.9c"]

                  ;; Web server
                  ;; ring-swagger 0.22.10 provided by compojure-api


Added new dependencies for the new template

--- project.clj
+++ project.clj
@@ -1,8 +1,10 @@
-(defproject retro-fever/lein-template "0.2.1"
+(defproject retro-fever/lein-template "0.3.0-SNAPSHOT"
   :description "Lein template for the retro-fever 2D game engine"
   :url "http://retro-fever.com"
   :license {:name "Eclipse Public License"
             :url "http://www.eclipse.org/legal/epl-v10.html"}
   :scm {:name "git"
         :url "https://github.com/rspect2014/retro-fever-template.git"}
-  :eval-in-leiningen true)
+  :eval-in-leiningen true
+  :dependencies [[leinjacker "0.4.1"]
+                 [selmer "0.7.9"]])


Update elasticsearch-zookeeper. Previous version was completely broken…

--- project.clj
+++ project.clj
@@ -21,7 +21,7 @@
                  [org.yaml/snakeyaml "1.13"] ; >=1.11 required by r18n, used by some of our apps
                  [org.xerial.snappy/snappy-java "1.1.1.6"]
                  [org.elasticsearch/elasticsearch "1.4.1" :exclusions [org.antlr/antlr-runtime]] ;; Cassandra requires [org.antlr/antlr "3.2"]
-                 [com.sonian/elasticsearch-zookeeper "1.4.0" :exclusions [org.jboss.netty/netty]]
+                 [com.sonian/elasticsearch-zookeeper "1.4.1" :exclusions [io.netty/netty]]
                  [org.scala-lang/scala-library "2.9.2"]
                  [org.apache.kafka/kafka_2.9.2 "0.8.1.1"]
                  [com.taoensso/nippy "2.5.2"]


Bump version -> 1.13.0-SNAPSHOT

Bump version -> 1.13.0-SNAPSHOT

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject toucan "1.12.0"
+(defproject toucan "1.13.0-SNAPSHOT"
   :description "Functionality for defining your application's models and querying the database."
   :url "https://github.com/metabase/toucan"
   :license {:name "Eclipse Public License"


Bumped:  - Clojure to 1.8.0  - ClojureScript to 1.8.40  - Reagent to 0.6.0-alpha2  - cljsbuild to 1.1.3

--- project.clj
+++ project.clj
@@ -9,9 +9,9 @@
   :url              "https://github.com/Day8/re-com.git"
   :license          {:name "MIT"}

-  :dependencies     [[org.clojure/clojure         "1.7.0"]
-                     [org.clojure/clojurescript   "1.7.145"]
-                     [reagent                     "0.6.0-alpha"]
+  :dependencies     [[org.clojure/clojure         "1.8.0"]
+                     [org.clojure/clojurescript   "1.8.40"]
+                     [reagent                     "0.6.0-alpha2"]
                      [com.andrewmcveigh/cljs-time "0.4.0"]]

   ;:plugins          [[lein-unpack-resources "0.1.1"]]
@@ -32,7 +32,7 @@
                                                [figwheel                        "0.5.2"]
                                                [spellhouse/clairvoyant          "0.0-48-gf5e59d3"]
                                                [secretary                       "1.2.3"]]
-                                :plugins      [[lein-cljsbuild                  "1.1.2"]
+                                :plugins      [[lein-cljsbuild                  "1.1.3"]
                                                [lein-figwheel                   "0.5.2"]
                                                [lein-shell                      "0.5.0"]
                                                [com.cemerick/clojurescript.test "0.3.3"]


updating dependencies in project.clj

updating dependencies in project.clj

--- project.clj
+++ project.clj
@@ -10,15 +10,15 @@
                  [org.clojure/clojurescript "1.9.293"]
                  [org.clojure/core.async "0.2.395"
                   :exclusions [org.clojure/tools.reader]]
-                 [reagent "0.6.0-rc"]
-                 [cljs-http "0.1.41"]
+                 [reagent "0.6.0"]
+                 [cljs-http "0.1.42"]
                  [com.cemerick/url "0.1.1"]
                  [alandipert/storage-atom "2.0.1"]
                  [prismatic/dommy "1.1.0"]
-                 [hickory "0.6.0"]
+                 [hickory "0.7.0"]
                  [com.andrewmcveigh/cljs-time "0.4.0"]]

-  :plugins [[lein-figwheel "0.5.4-2"]
+  :plugins [[lein-figwheel "0.5.9"]
             [lein-cljsbuild "1.1.3" :exclusions [[org.clojure/clojure]]]]

   :source-paths ["src"]
@@ -95,7 +95,7 @@
   ;; https://github.com/bhauman/lein-figwheel/wiki/Using-the-Figwheel-REPL-within-NRepl

-  :profiles {:dev {:dependencies [[figwheel-sidecar "0.5.4-2"]
+  :profiles {:dev {:dependencies [[figwheel-sidecar "0.5.9"]
                                   [com.cemerick/piggieback "0.2.1"]]
                    ;; need to add dev source path here to get user.clj loaded
                    :source-paths ["src" "dev"]


Use the EOSDIS docs theme.

Use the EOSDIS docs theme.

--- project.clj
+++ project.clj
@@ -8,6 +8,10 @@
     ;; If another project can't find the banner, just skip it;
     ;; this function is really only meant to be used by Dragon itself.
     (catch Exception _ "")))
+
+(defn get-tophat
+  []
+  (slurp (clojure.java.io/resource "eosdis/tophat-include.html")))

 (defn get-prompt
   [ns]
@@ -92,7 +96,7 @@
         :default (complement :system)}}
     :docs {
       :dependencies [
-        [clojang/codox-theme "0.2.0-SNAPSHOT"]]
+        [gov.nasa.earthdata/codox-theme "1.0.0-SNAPSHOT"]]
       :plugins [
         [lein-codox "0.10.3"]
         [lein-marginalia "0.9.1"]]
@@ -105,7 +109,17 @@
         :metadata {
           :doc/format :markdown
           :doc "Documentation forthcoming"}
-        :themes [:clojang]
+        :themes [:eosdis]
+        :html {
+          :transforms [[:head]
+                       [:append
+                       [:script {
+                         :src "https://cdn.earthdata.nasa.gov/tophat2/tophat2.js"
+                         :id "earthdata-tophat-script"
+                         :data-show-fbm "true"
+                         :data-show-status "true"
+                         :data-status-api-url "https://status.earthdata.nasa.gov/api/v1/notifications"
+                         :data-status-polling-interval "10"}]]]}
         :doc-paths ["resources/docs/markdown"]
         :output-path "resources/public/docs/opendap/docs/reference"}}}
   :aliases {


Dependency: clojure-ini + changed required Clojure version

--- project.clj
+++ project.clj
@@ -3,8 +3,9 @@
     :url "http://example.com/FIXME"
     :license {:name "Eclipse Public License"
               :url "http://www.eclipse.org/legal/epl-v10.html"}
-    :dependencies [[org.clojure/clojure "1.6.0"]
+    :dependencies [[org.clojure/clojure "1.7.0"]
                    [org.clojure/tools.cli "0.3.1"]
+                   [clojure-ini "0.0.1"]
                    [ring/ring-core "1.3.2"]
                    [ring/ring-jetty-adapter "1.3.2"]
                    [hiccup "1.0.4"]]
@@ -16,3 +17,4 @@
     :main ^:skip-aot emender-service.core
     :ring {:handler emender-service.core/app}
     :profiles {:uberjar {:aot :all}})
+


Upgraded re-frame, removed reagent reference (#39)

No longer running into any issues, even after a `lein clean` and clearing
the browser cache.

--- project.clj
+++ project.clj
@@ -29,10 +29,9 @@
                  [mount "0.1.11"]
                  [org.jsoup/jsoup "1.10.3"]
                  [org.postgresql/postgresql "42.1.3"]
-                 [reagent "0.6.0" :exclusions [cljsjs/react]]
                  [ring/ring-defaults "0.3.1"]               ; Used for anti-forgery
                  [reagent-utils "0.2.1"]                    ; Used for reagent.cookies
-                 [re-frame "0.8.0"]
+                 [re-frame "0.9.4"]
                  [ring/ring-session-timeout "0.2.0"]
                  [selmer "1.11.0"]]


lein-release plugin: bumped version from 0.2.0 to 0.2.1-SNAPSHOT for next development cycle

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject dda/dda-serverspec-crate "0.2.0"
+(defproject dda/dda-serverspec-crate "0.2.1-SNAPSHOT"
   :description "A crate to get facts from server nodes and test these facst against your expectation."
   :url "https://domaindrivenarchitecture.org"
   :license {:name "Apache License, Version 2.0"


0.8.4-SNAPSHOT

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject expound "0.8.3"
+(defproject expound "0.8.4-SNAPSHOT"
   :description "Human-optimized error messages for clojure.spec"
   :url "https://github.com/bhb/expound"
   :license {:name "Eclipse Public License"


Version 1.10.0-SNAPSHOT

Version 1.10.0-SNAPSHOT

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject org.zalando.stups/friboo "1.9.0"
+(defproject org.zalando.stups/friboo "1.10.0-SNAPSHOT"
   :description "A utility library to write microservices in clojure."
   :url "https://github.com/zalando-stups/friboo"


Got jar file building with all required files

--- project.clj
+++ project.clj
@@ -8,13 +8,13 @@
   :repositories [
     ["clojars" {:sign-releases false}]]
   :repl-options {:init-ns hyjinks.core}
-  :source-paths ["src/shared" "src/server_dev"]
+  :source-paths ["src/shared" "src/cljs" "src/server_dev"]
   :clean-targets ^{:protect false} [
     "target"
     "logs"
     "resources/public/js/compiled"]
   :test-paths ["test"]
-  :jar-exclusions [#"dev" #".html" #"public" #"server_dev"]
+  :jar-exclusions [#"dev" #".html" #"public" #"server"]
   :cljsbuild {
     :builds {
       :dev {
@@ -33,7 +33,8 @@
         :compiler {
           :output-to "resources/public/js/compiled/hyjinks_browser.js"
           :optimizations :advanced
-          :pretty-print false}}}}
+          :pretty-print false}}}
+    :test-commands {"test" ["phantomjs" "browser_test.js"]}}
   :plugins [
     [lein-cljsbuild "1.1.0"]
     [lein-figwheel "0.4.0"]]


lein-release plugin: preparing 0.3 release

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject obcc "0.3-SNAPSHOT"
+(defproject obcc "0.3"
   :description "openblockchain compiler"
   :url "https://github.com/openblockchain/obcc"
   :license {:name "Apache License"


Clean commented-out libraries from project.clj

--- project.clj
+++ project.clj
@@ -23,22 +23,10 @@
                                                                 org.apache.httpcomponents/httpcore
                                                                 org.apache.maven.wagon/wagon-http
                                                                 org.codehaus.plexus/plexus-utils]]
-                 ;; TODO: Switch to integrant
-                 #_[com.jimrthy/component-dsl "0.1.2-SNAPSHOT" :exclusions [org.clojure/clojure]]
                  [com.taoensso/timbre "4.10.0" :exclusions [org.clojure/clojure
                                                            org.clojure/tools.reader]]
-                 ;; Q: Do I really want this?
-                 ;; A: Not really
-                 [fullcontact/full.async "1.0.0" :exclusions [org.clojure/clojure
-                                                              org.clojure/core.async]]
-                 #_[gloss "0.2.5" :exclusions [byte-streams
-                                             manifold
-                                             potemkin]]
                  [im.chit/hara.event "2.5.10" :exclusions [org.clojure/clojure]]
                  [integrant "0.6.1"]
-                 ;; This isn't playing with clojure 1.9
-                 #_[io.aviso/config "0.2.4" :exclusions [org.clojure/clojure
-                                                         prismatic/schema]]
                  ;; They're up to 5.0.0.Alpha2, but that breaks aleph
                  [io.netty/netty-all "4.1.6.Final"]
                  ;; Because pomegranate and lein conflict.
@@ -47,14 +35,7 @@
                  [org.apache.httpcomponents/httpcore "4.4.7"]
                  [org.apache.httpcomponents/httpclient "4.5.3"]

-                 ;; This is screwing up EDN serialization
-                 ;; In particular dates.
-                 ;; TODO: Make it ignore those
-                 ;; Q: Has the situation improved in the months I've been ignoring it?
-                 ;; A: It really should have. The issue behind it is closed,
-                 ;; anyway.
-                 ;; Next Q: Does this really gain anything?
-                 #_[mvxcvi/puget "1.0.1" :exclusions [org.clojure/clojure]]
+                 ;; Sticking with this version due to CIDER incompatabilities
                  [org.clojure/clojure "1.9.0-alpha17"]
                  [org.clojure/core.async "0.3.443" :exclusions [org.clojure/clojure
                                                                 org.clojure/tools.analyzer]]


riemann-clojure-client 0.2.6

riemann-clojure-client 0.2.6

--- project.clj
+++ project.clj
@@ -35,7 +35,7 @@
     [log4j/apache-log4j-extras "1.0"]
     [org.antlr/antlr "3.2"]
     [org.slf4j/slf4j-log4j12 "1.6.4"]
-    [riemann-clojure-client "0.2.6-SNAPSHOT"]
+    [riemann-clojure-client "0.2.6"]
     [slingshot "0.10.2"]
     [clj-campfire "2.1.0"]
     [less-awful-ssl "0.1.0"]


rename module to kbilling/calc-cljs

rename module to kbilling/calc-cljs

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject kbilling-calc-cljs "0.1.0-SNAPSHOT"
+(defproject kbilling/calc-cljs "0.1.0-SNAPSHOT"
   :description "KillingBilling JS plan calculation framework"
   :url "https://www.killingbilling.com/FIXME"
   :license {:name "Eclipse Public License"


(maint) Use AOT for uberjar profile

(maint) Use AOT for uberjar profile

--- project.clj
+++ project.clj
@@ -173,7 +173,7 @@
                    ;; SERVER-332, enable SSLv3 for unit tests that exercise SSLv3
                    :jvm-opts      ["-Djava.security.properties=./dev-resources/java.security"]}

-             :testutils {:source-paths ^:replace ["test/unit" "test/integration"]}
+             :testutils {:source-paths ["test/unit" "test/integration"]}
              :test {
                     ;; NOTE: In core.async version 0.2.382, the default size for
                     ;; the core.async dispatch thread pool was reduced from
@@ -215,7 +215,58 @@
                                 [puppetlabs/lein-ezbake "1.8.5"]]
                       :hooks [leiningen.cljsbuild]
                       :name "puppetserver"}
-             :uberjar {:aot [puppetlabs.trapperkeeper.main]
+             :uberjar {:aot [puppetlabs.trapperkeeper.main
+                             puppetlabs.trapperkeeper.services.status.status-service
+                             puppetlabs.trapperkeeper.services.metrics.metrics-service
+                             puppetlabs.services.protocols.jruby-puppet
+                             puppetlabs.trapperkeeper.services.watcher.filesystem-watch-service
+                             puppetlabs.trapperkeeper.services.webserver.jetty9-service
+                             puppetlabs.trapperkeeper.services.webrouting.webrouting-service
+                             puppetlabs.services.legacy-routes.legacy-routes-core
+                             puppetlabs.services.protocols.jruby-metrics
+                             puppetlabs.services.protocols.ca
+                             puppetlabs.puppetserver.common
+                             puppetlabs.trapperkeeper.services.scheduler.scheduler-service
+                             puppetlabs.services.jruby.jruby-metrics-core
+                             puppetlabs.services.jruby.jruby-metrics-service
+                             puppetlabs.services.protocols.puppet-server-config
+                             puppetlabs.puppetserver.liberator-utils
+                             puppetlabs.services.puppet-profiler.puppet-profiler-core
+                             puppetlabs.services.jruby-pool-manager.jruby-pool-manager-service
+                             puppetlabs.services.jruby.puppet-environments
+                             puppetlabs.services.jruby.jruby-puppet-schemas
+                             puppetlabs.services.jruby.jruby-puppet-core
+                             puppetlabs.services.jruby.jruby-puppet-service
+                             puppetlabs.puppetserver.jruby-request
+                             puppetlabs.puppetserver.shell-utils
+                             puppetlabs.puppetserver.ringutils
+                             puppetlabs.puppetserver.certificate-authority
+                             puppetlabs.services.ca.certificate-authority-core
+                             puppetlabs.puppetserver.ring.middleware.params
+                             puppetlabs.services.puppet-admin.puppet-admin-core
+                             puppetlabs.services.puppet-admin.puppet-admin-service
+                             puppetlabs.services.versioned-code-service.versioned-code-core
+                             puppetlabs.services.ca.certificate-authority-disabled-service
+                             puppetlabs.services.protocols.request-handler
+                             puppetlabs.services.request-handler.request-handler-core
+                             puppetlabs.puppetserver.cli.subcommand
+                             puppetlabs.services.request-handler.request-handler-service
+                             puppetlabs.services.protocols.versioned-code
+                             puppetlabs.services.protocols.puppet-profiler
+                             puppetlabs.services.puppet-profiler.puppet-profiler-service
+                             puppetlabs.services.master.master-core
+                             puppetlabs.services.protocols.master
+                             puppetlabs.services.config.puppet-server-config-core
+                             puppetlabs.services.config.puppet-server-config-service
+                             puppetlabs.services.versioned-code-service.versioned-code-service
+                             puppetlabs.services.legacy-routes.legacy-routes-service
+                             puppetlabs.services.master.master-service
+                             puppetlabs.services.ca.certificate-authority-service
+                             puppetlabs.puppetserver.cli.ruby
+                             puppetlabs.puppetserver.cli.irb
+                             puppetlabs.puppetserver.cli.gem
+                             puppetlabs.services.analytics.analytics-service
+                             puppetlabs.services.protocols.legacy-routes]
                        :dependencies [[puppetlabs/trapperkeeper-webserver-jetty9 nil]]}
              :ci {:plugins [[lein-pprint "1.1.1"]
                             [lein-exec "0.3.7"]]}


Bump tools.namespace dep

Bump tools.namespace dep

0.2.11 adds support for reader conditionals.  This might keep
move-file-or-dir from breaking on projects containing cljc files.

--- project.clj
+++ project.clj
@@ -8,7 +8,7 @@
                  ^:source-dep [cheshire "5.4.0"]
                  ^:source-dep [alembic "0.3.2"]
                  ^:source-dep [org.clojure/tools.analyzer.jvm "0.6.6"]
-                 ^:source-dep [org.clojure/tools.namespace "0.2.10"]
+                 ^:source-dep [org.clojure/tools.namespace "0.2.11"]
                  ^:source-dep [org.clojure/tools.reader "0.9.2"]
                  ^:source-dep [org.clojure/java.classpath "0.2.2"]
                  ^:source-dep [me.raynes/fs "1.4.6"]


Update dependencies.

Update dependencies.

--- project.clj
+++ project.clj
@@ -36,7 +36,7 @@
   ]

   :plugins [
-    [lein-ring "0.9.0"] ; common ring tasks https://github.com/weavejester/lein-ring
+    [lein-ring "0.9.1"] ; common ring tasks https://github.com/weavejester/lein-ring
     [lein-cljsbuild "1.0.4"] ; ClojureScript compiler https://github.com/emezeske/lein-cljsbuild
     [lein-midje "3.1.3"] ; Example-based testing https://github.com/marick/lein-midje
     [lein-bikeshed "0.2.0"] ; Check for code smells https://github.com/dakrone/lein-bikeshed
@@ -44,7 +44,7 @@
     [jonase/eastwood "0.2.1"] ; Clojure linter https://github.com/jonase/eastwood
     [lein-checkall "0.1.1"] ; Runs bikeshed, kibit and eastwood https://github.com/itang/lein-checkall
     [lein-pprint "1.1.2"] ; pretty-print the lein project map https://github.com/technomancy/leiningen/tree/master/lein-pprint
-    [lein-ancient "0.5.5"] ; Check for outdated dependencies https://github.com/xsc/lein-ancient
+    [lein-ancient "0.6.1"] ; Check for outdated dependencies https://github.com/xsc/lein-ancient
     [lein-spell "0.1.0"] ; Catch spelling mistakes in docs and docstrings https://github.com/cldwalker/lein-spell
     [lein-deps-tree "0.1.2"] ; Print a tree of project dependencies https://github.com/the-kenny/lein-deps-tree
     [lein-environ "1.0.0"] ; ; Get environment settings from lein project https://github.com/weavejester/environ


new project config with prod profiles, dependency cleaup

--- project.clj
+++ project.clj
@@ -3,35 +3,86 @@
   :url "http://example.com/FIXME"
   :license {:name "Eclipse Public License"
             :url  "http://www.eclipse.org/legal/epl-v10.html"}
+
   :dependencies [[org.clojure/clojure "1.9.0-alpha14"]
                  [org.clojure/clojurescript "1.9.456"]
-                 [figwheel-sidecar "0.5.9"]
                  [cljsjs/react "15.3.1-0"]
                  [cljsjs/react-dom "15.3.1-0"]
                  [cljsjs/material "1.3.0-0"]
                  [rum "0.10.7" :exclusions [cljsjs/react cljsjs/react-dom]]
-                 [rum-mdl "0.2.0"]
-                 [secretary "1.2.3"]
-                 [cheshire "5.6.3"]
-                 [http-kit "2.1.19"]]
-  :plugins [[lein-cljsbuild "1.1.4"]
-            [lein-figwheel "0.5.9"]]
+                 [ring "1.5.1"]
+                 [compojure "1.5.2"]
+                 [http-kit "2.2.0"]
+                 [cheshire "5.6.3"]]
+
+  :plugins [[lein-cljsbuild "1.1.4"]]
+
+  :min-lein-version "2.6.1"
+
+  :source-paths ["src/clj" "src/cljc"]
+
+  :test-paths ["test/clj" "test/cljc"]
+
   :clean-targets ^{:protect false} ["resources/public/js/out"
                                     "resources/public/js/main.js"
                                     :target-path]
-  :source-paths ["src/clj", "script", "libs"]
-  :cljsbuild {:builds [{:id           "dev"
-                        :source-paths ["src/cljs"]
-                        :figwheel     true
-                        :compiler     {:main         "swarmpit.app"
-                                       :asset-path   "js/out"
-                                       :foreign-libs [{:file     "libs/material-ui/material-ui.inc.js"
+
+  :uberjar-name "swarmpit.jar"
+
+  :main swarmpit.server
+
+  :repl-options {:init-ns user}
+
+  :cljsbuild {
+              :builds
+              [{:id           "app"
+                :source-paths ["src/cljs" "src/cljc"]
+                :figwheel     true
+                :compiler     {:main                 swarmpit.ui
+                               :foreign-libs         [{:file     "libs/material-ui/material-ui.inc.js"
                                                        :file-min "libs/material-ui/material-ui.min.inc.js"
                                                        :provides ["cljsjs.material-ui"]
                                                        :requires ["cljsjs.react" "cljsjs.react.dom"]}]
-                                       :externs      ["libs/material-ui/material-ui.ext.js"]
-                                       :output-to    "resources/public/js/main.js"
-                                       :output-dir   "resources/public/js/out"
-                                       }}]}
+                               :externs              ["libs/material-ui/material-ui.ext.js"]
+                               :asset-path           "js/out"
+                               :output-to            "resources/public/js/main.js"
+                               :output-dir           "resources/public/js/out"
+                               :source-map-timestamp true}}
+
+               {:id           "min"
+                :source-paths ["src/cljs" "src/cljc"]
+                :jar          true
+                :compiler     {:main                 swarmpit.ui
+                               :foreign-libs         [{:file     "libs/material-ui/material-ui.inc.js"
+                                                       :file-min "libs/material-ui/material-ui.min.inc.js"
+                                                       :provides ["cljsjs.material-ui"]
+                                                       :requires ["cljsjs.react" "cljsjs.react.dom"]}]
+                               :externs              ["libs/material-ui/material-ui.ext.js"]
+                               :output-to            "resources/public/js/main.js"
+                               :output-dir           "target"
+                               :source-map-timestamp true
+                               :optimizations        :advanced
+                               :pretty-print         false}}]}
+
   :figwheel {:css-dirs       ["resources/public/css"]
-             :server-logfile "log/figwheel.log"})
+             :ring-handler   user/http-handler
+             :server-logfile "log/figwheel.log"}
+
+  :profiles {:dev
+             {:dependencies [[figwheel "0.5.9"]
+                             [figwheel-sidecar "0.5.9"]
+                             [com.cemerick/piggieback "0.2.1"]
+                             [org.clojure/tools.nrepl "0.2.12"]]
+
+              :plugins      [[lein-figwheel "0.5.9"]
+                             [lein-doo "0.1.6"]]
+
+              :source-paths ["dev"]
+              :repl-options {:nrepl-middleware [cemerick.piggieback/wrap-cljs-repl]}}
+
+             :uberjar
+             {:source-paths ^:replace ["src/clj" "src/cljc"]
+              :prep-tasks   ["compile" ["cljsbuild" "once" "min"]]
+              :hooks        []
+              :omit-source  true
+              :aot          :all}})


lein-release plugin: bumped version from 0.95 to 0.96-SNAPSHOT for next development cycle

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject exploud "0.95"
+(defproject exploud "0.96-SNAPSHOT"
   :description "Exploud service"
   :url "http://github.brislabs.com/cloud-tooling/exploud/wiki"


Update dependencies.

Update dependencies.

--- project.clj
+++ project.clj
@@ -7,8 +7,7 @@
   :javac-options ["-target" "1.8" "-source" "1.8" "-Xlint:-options"]
   :plugins [[lein-ancient "0.6.7"]]
   :dependencies [[org.clojure/clojure "1.8.0" :scope "provided"]
-                 [org.clojure/clojurescript "1.7.228" :scope "provided"]
+                 [org.clojure/clojurescript "1.8.34" :scope "provided"]
                  [com.cognitect/transit-cljs "0.8.237"]
                  [funcool/httpurr "0.4.0"]
-                 [funcool/beicon "0.6.1"]
-                 [funcool/promesa "0.8.1"]])
+                 [funcool/beicon "1.1.0"]])


Update pretty dependency to latest version 0.1.11

--- project.clj
+++ project.clj
@@ -6,7 +6,7 @@
   ;; Normally we don't AOT compile; only when tracking down reflection warnings.
   :profiles {:dev
               {:dependencies [[ring-mock "0.1.5"]
-                              [io.aviso/pretty "0.1.10"]
+                              [io.aviso/pretty "0.1.11"]
                               [clj-http "0.9.1"]
                               [speclj "3.0.2"]
                               [log4j "1.2.17"]]}}


Bump version -> 1.14.1

Bump version -> 1.14.1

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject toucan "1.14.0"
+(defproject toucan "1.14.1"
   :description "Functionality for defining your application's models and querying the database."
   :url "https://github.com/metabase/toucan"
   :license {:name "Eclipse Public License"


make httpkit dev dependency

make httpkit dev dependency

--- project.clj
+++ project.clj
@@ -16,17 +16,15 @@
                  [ch.qos.logback/logback-classic "1.0.13"]
                  [ring-server "0.3.1"]
                  [ring/ring-json "0.3.1"]
-                 [hiccup "1.0.5"]
-                 ; test-only
-                 [http-kit "2.1.16"]
-                 ]
+                 [hiccup "1.0.5"]]
   :test-selectors {:default (complement :smoke)
                    :smoke :smoke
                    :all (constantly true)}
   :ring {:handler todopipeline.pipeline/app
          :init todopipeline.pipeline/start-pipeline-thread }
   :main todopipeline.pipeline
-  :profiles {:uberjar {:aot [todopipeline.pipeline.main]}}
+  :profiles {:uberjar {:aot [todopipeline.pipeline.main]}
+             :dev {:dependencies [[http-kit "2.1.16"]]}}
   :plugins [[lein-ring "0.8.13"]
             [lein-kibit "0.0.8"]
             [lein-marginalia "0.8.0"]


Update dependencies.

Update dependencies.

--- project.clj
+++ project.clj
@@ -18,8 +18,8 @@
     [org.clojure/core.async "0.2.385"] ; Dependency of core.match and RethinkDB https://github.com/clojure/core.async
     [defun "0.3.0-alapha"] ; Erlang-esque pattern matching for Clojure functions https://github.com/killme2008/defun
     [lockedon/if-let "0.1.0"] ; More than one binding for if/when macros https://github.com/LockedOn/if-let
-    [ring/ring-devel "1.6.0-beta3"] ; Web application library https://github.com/ring-clojure/ring
-    [ring/ring-core "1.6.0-beta3"] ; Web application library https://github.com/ring-clojure/ring
+    [ring/ring-devel "1.6.0-beta4"] ; Web application library https://github.com/ring-clojure/ring
+    [ring/ring-core "1.6.0-beta4"] ; Web application library https://github.com/ring-clojure/ring
     [jumblerg/ring.middleware.cors "1.0.1"] ; CORS library https://github.com/jumblerg/ring.middleware.cors
     [http-kit "2.2.0"] ; Web server http://http-kit.org/
     [compojure "1.5.1"] ; Web routing https://github.com/weavejester/compojure


Version 0.0.4

Version 0.0.4

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject com.lemondronor/turboshrimp-xuggler "0.0.4-SNAPSHOT"
+(defproject com.lemondronor/turboshrimp-xuggler "0.0.4"
   :description "An AR.Drone video decoder for the turboshrimp library that uses the xuggler H.264 decoder."
   :url "https://github.com/wiseman/turboshrimp-xuggler"
   :license {:name "MIT License"


Version 1.0.7-SNAPSHOT

Version 1.0.7-SNAPSHOT

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject com.ninjakoala/lamarck "1.0.6"
+(defproject com.ninjakoala/lamarck "1.0.7-SNAPSHOT"
   :description "For classifying clouds (specifically Amazon's)"
   :url "https://github.com/ninjakoala/lamarck"
   :license {:name "Eclipse Public License"


bumped to 0.2.8

bumped to 0.2.8

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject wit/duckling "0.2.7"
+(defproject wit/duckling "0.2.8"
   :description "Date & Number parser"
   :main duckling.core
   :license {:name "Eclipse Public License"


Upgrade sparkling

Upgrade sparkling

--- project.clj
+++ project.clj
@@ -4,18 +4,19 @@
   :license {:name "Eclipse Public License"
             :url "http://www.eclipse.org/legal/epl-v10.html"}
   :dependencies [[org.clojure/clojure "1.6.0"]
-                 [gorillalabs/sparkling "1.2.1"]
+                 [gorillalabs/sparkling "1.2.3"]
                  [t6/from-scala "0.2.1"]]
   :source-paths ["src/clojure"]
   :java-source-paths ["src/java"]
   :aot [#".*" glittering.serialization sparkling.destructuring]
-  :profiles {:default [:base :system :user :provided :spark-1.3.1 :dev]
-             :spark-1.3.1 ^{:pom-scope :provided}
-             {:dependencies [[org.apache.spark/spark-core_2.11 "1.3.1"]
-                             [org.apache.spark/spark-graphx_2.11 "1.3.1"]]}
+  :profiles {:default [:base :system :user :provided :spark-1.4.0 :dev]
+             :spark-1.4.0 ^{:pom-scope :provided}
+             {:dependencies [[org.apache.spark/spark-core_2.10 "1.4.0"]
+                             [org.apache.spark/spark-graphx_2.10 "1.4.0"]]}
              :test {:resource-paths ["dev-resources"]
                     :aot [glittering.core
                           glittering.pregel
+                          glittering.destructuring
                           glittering.pregel-test
                           glittering.test-utils]}
              :dev {:resource-paths ["data"]


added server and heap space options to jvm-opts, in project.clj.

--- project.clj
+++ project.clj
@@ -5,6 +5,7 @@
   :warn-on-reflection true
   :marginalia {:javascript ["mathjax/MathJax.js"]}
   :javac-options {:debug "true" :fork "true"}
+  :jvm-opts ["-Xmx1g" "-server"]
   :repositories {"conjars" "http://conjars.org/repo/"
                  "sonatype" "http://oss.sonatype.org/content/repositories/releases"}
   :dependencies [[org.clojure/clojure "1.2.0"]


Shorten nullsink function

Shorten nullsink function

--- src/leiningen/compile.clj
+++ src/leiningen/compile.clj
@@ -149,15 +149,12 @@
     (when handler (handler java))
     (.executeJava java)))

-(defn- on-windows? []
-  (let [os (.. System (getProperties) (get "os.name"))]
-    (> (.indexOf os "Windows") -1)))
-
 (defn- platform-nullsink []
   (file
-   (if (on-windows?)
-     "NUL"
-     "/dev/null")))
+   (let [os (.. System (getProperties) (get "os.name"))]
+     (if (> (.indexOf os "Windows") -1)
+       "NUL"
+       "/dev/null"))))

 (defn- status [status msg]
   (do


Change login route to use the login view

--- src/todo_repl_webapp/handler.clj
+++ src/todo_repl_webapp/handler.clj
@@ -19,7 +19,7 @@
       (views/display eval-result)))
   (GET "/admin" request (friend/authorize #{::admin}
                                           "Admin page"))
-  (GET "/login" [] "This is a login page")
+  (GET "/login" [] (views/login-page))
   (route/resources "/")
   (route/not-found "Not Found"))


Improve workspace common lenses.

Improve workspace common lenses.

--- src/uxbox/ui/workspace/base.cljs
+++ src/uxbox/ui/workspace/base.cljs
@@ -4,7 +4,7 @@
             [cats.labs.lens :as l]
             [uxbox.rstore :as rs]
             [uxbox.state :as st]
-            [uxbox.data.projects :as dp]
+            [uxbox.state.project :as stpr]
             [uxbox.data.workspace :as dw]
             [uxbox.util.geom.point :as gpt]
             [uxbox.util.lens :as ul]
@@ -16,17 +16,25 @@
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

 (def ^:static project-l
-  (as-> (ul/dep-in [:projects-by-id] [:workspace :project]) $
-    (l/focus-atom $ st/state)))
+  (letfn [(getter [state]
+            (let [project (get-in state [:workspace :project])]
+              (get-in state [:projects-by-id project])))]
+    (as-> (ul/getter getter) $
+      (l/focus-atom $ st/state))))

 (def ^:static page-l
-  (as-> (ul/dep-in [:pages-by-id] [:workspace :page]) $
-    (l/focus-atom $ st/state)))
+  (letfn [(getter [state]
+            (let [page (get-in state [:workspace :page])]
+              (get-in state [:pages-by-id page])))]
+    (as-> (ul/getter getter) $
+      (l/focus-atom $ st/state))))

 (def ^:static pages-l
-  (as-> (ul/getter #(let [pid (get-in % [:workspace :project])]
-                      (dp/project-pages % pid))) $
-    (l/focus-atom $ st/state)))
+  (letfn [(getter [state]
+            (let [project (get-in state [:workspace :project])]
+              (stpr/project-pages state project)))]
+    (as-> (ul/getter getter) $
+      (l/focus-atom $ st/state))))

 (def ^:static workspace-l
   (as-> (l/in [:workspace]) $


Make formatted-channel more lamina-like

Make formatted-channel more lamina-like

--- src/engulf/comm/netchan.clj
+++ src/engulf/comm/netchan.clj
@@ -62,18 +62,18 @@

 (defn encode-frame
   "Encodes a msg into a buffer-seq suitable for gloss framing"
-  [type body]
+  [[type body]]
   (to-buf-seq (encode-msg type body)))

 (defn formatted-channel
   "Takes a channel from a tcp server or client, and returns a new channel that automatically
    decodes and encodes values"
   [conn]
-  (let [tx (channel)
-        rx (channel)]
-    (receive-all conn (fn fmtd-rx [frame] (enqueue rx (decode-frame frame))))
-    (receive-all tx (fn fmtd-tx [[type body]] (enqueue conn (encode-frame type body))))
-    (splice rx tx)))
+  (let [tx (channel)]
+    (siphon (map* encode-frame tx) conn)
+    (splice
+     (map* decode-frame conn)
+     tx)))

 (defn start-server
   "Starts a TCP server. Returns an aleph server"


Nuke some blank lines.

Nuke some blank lines.

--- src/frmr/dstt.clj
+++ src/frmr/dstt.clj
@@ -50,7 +50,7 @@
   "Execute number-of-requests requests using the request-invoker with a pause-between-requests pause between
   them. This execution happens in futures so that if we're simulating a decent amount of load that
   load should be able to happen in parallel.
-
+
   The handler provided should consume two arguments: the total time the request took and the content
   of the response. Using these two pieces of information it should generate a vector, where each
   member represents one timing category from the request. So, if you're querying a JSON API that
@@ -128,7 +128,7 @@

 (defn -main
   "Main entry point.
-
+
   Takes in the URL that you want to test against, the number of seconds that you want to run that
   test, the number of requests to make over that time frame, and the handler to produce a vector
   of results to be averaged."


documentation

documentation

git-svn-id: 03a8048b5ee8463be5048a3801110fb50f378627@11072 d0ab736e-dc22-4aeb-8dc9-08def0aa14fd

--- plugins/SlideExplorer2/src/slide_explorer/widgets.clj
+++ plugins/SlideExplorer2/src/slide_explorer/widgets.clj
@@ -24,33 +24,45 @@
     (.put am uuid action)))

 (defn bind-keys
+  "Bind hot keys to a given swing component."
   [component input-keys action-fn global?]
   (dorun (map #(bind-key component % action-fn global?) input-keys)))

 (defn bind-window-keys
+  "Bind hot keys to a given window."
   [window input-keys action-fn]
   (bind-keys (.getContentPane window) input-keys action-fn true))

 ;; window and screen utilities

-(defn screen-bounds [screen]
+(defn screen-bounds
+  "Returns the boundary rectangle for a given screen."
+  [screen]
   (.. screen getDefaultConfiguration getBounds))

-(defn screen-devices []
+(defn screen-devices
+  "List all screen devices."
+  []
   (seq (.. java.awt.GraphicsEnvironment
       getLocalGraphicsEnvironment
       getScreenDevices)))

-(defn default-screen-device []
+(defn default-screen-device
+  "Get the default (main) screen device."
+  []
   (.. java.awt.GraphicsEnvironment
       getLocalGraphicsEnvironment
       getDefaultScreenDevice))

-(defn- overlap-area [rect1 rect2]
+(defn- overlap-area
+  "Find the area of overlap between two rectangles of type java.awt.Rectangle."
+  [rect1 rect2]
   (let [intersection (.intersection rect1 rect2)]
     (* (.height intersection) (.width intersection))))

-(defn window-screen [window]
+(defn window-screen
+  "Find the screen a given window currently occupies the most."
+  [window]
   (when window
     (let [window-bounds (.getBounds window)
           screens (screen-devices)]
@@ -116,7 +128,10 @@
       (exit-full-screen! window)
       (full-screen! window))))

-(defn setup-fullscreen [window]
+(defn setup-fullscreen
+  "Endows the given window with the ability to enter and exit full screen.
+   Key commands are F for enter/exit and ESCAPE also for exit."
+  [window]
   (bind-window-keys window ["F"] #(toggle-full-screen! window))
   (bind-window-keys window ["ESCAPE"] #(exit-full-screen! window)))


adds help

adds help

--- src/gecf/core.clj
+++ src/gecf/core.clj
@@ -3,7 +3,7 @@
   (:use gecf.flow)
   (:use gecf.connected)
   (:use clojure.pprint)
-  (:require [maa.getopts :as opts] )
+  (:require [maa.getopts :as opts])
   (:require [clojure.edn :as edn])
   (:gen-class))

@@ -74,8 +74,9 @@
 (defn read-all
   ([] (read-all *in*))
   ([input]
-   (let [eof (Object.)] ;; possibly change to edn for safety... (but future? implicit graphs are unsafe anyway); different eof semantics
-     (take-while #(not= % eof) (repeatedly #(read input false eof))))))
+   (binding [*read-eval* false]
+     (let [eof (Object.)]
+       (take-while #(not= % eof) (repeatedly #(edn/read {:eof eof} input)))))))

 (defn read-pairs [] (read-all))
@@ -88,6 +89,25 @@
     (-> g min-max-flow first prn)))

 (defn prn-help []
+  (println "Gecf : compute k-edge conectedness of given graph
+
+  --bidirectional  -b         consider input to be an undirected graph (default)
+  --directed       -d         consider input to be a directed graph
+
+  --pairs          -p         input consists of nodes grouped to pairs: edges
+                              like: [1 2] [2 3] [3 1]
+  --simple         -s         input is flat, pairs are considered to be edges (default)
+                              like: 1 2 2 3 3 1
+
+  --full N         -f         use a full graph of N vertices (for testing etc.)
+  --random N       -r         use an undirected graph of N vertices with
+                              a random subset of edges (for testing etc.)
+
+  --help           -h         show this help
+  --version
+
+What can be used as vertex identifier? - any edn structure/value. (You might prefer values that are fast to hash and compare.)
+")
   )

 (defn args-dispatch [args]
@@ -123,17 +143,17 @@

         graph-builder simple-bigraph
         graph-builder (if (opt :digraph) simple-digraph graph-builder)
-        graph-builder (if (opt :undig) simple-bigraph graph-builder)
+        graph-builder (if (opt :undig) simple-bigraph graph-builder)   ;;prefered if both specified

         graph-reader read-simple
         graph-reader (if (opt :paired) read-pairs graph-reader)
-        graph-reader (if (opt :simple) read-simple graph-reader)
+        graph-reader (if (opt :simple) read-simple graph-reader)       ;;prefered if both specified

         print-cut? (get-in ac [:opts :cut])
         ]
     (cond
-     (opt :version) (prn 'Gecf __gecf-version__)
-     (opt :help) (prn "-b -d, -p -s ... some help")
+     (opt :version) (println __gecf-version__)
+     (opt :help) (prn-help)
      (opt :full) (->> (read-string (opt :full)) full-graph (compute-print print-cut?))
      (opt :random) (->> (read-string (opt :random)) rand-graph (compute-print print-cut?))
      :else (->> (graph-reader) (apply graph-builder) (compute-print print-cut?))
@@ -144,10 +164,6 @@

   (shutdown-agents)) ;;kill thread-pool

-
-
-
-
 ;(apply -main *command-line-args*)


Unused imports

Unused imports

--- src/wishlistd/views/wishlist.clj
+++ src/wishlistd/views/wishlist.clj
@@ -2,8 +2,6 @@
   (:require [wishlistd.views.common :as common]
             [wishlistd.json :as response])
   (:use noir.core
-        hiccup.core
-        hiccup.page-helpers
         wishlistd.models.redis))

 (defn main-page []


added creating of vhosts that Kramerius middleware needs.

--- test/edeposit/amqp/kramerius/components_test.clj
+++ test/edeposit/amqp/kramerius/components_test.clj
@@ -7,6 +7,7 @@
             [edeposit.amqp.kramerius.handlers :as h]
             [langohr.basic :as lb]
             [langohr.core :as l]
+            [langohr.http :as lh]
             [langohr.consumers :as lc]
             [langohr.exchange :as le]
             [langohr.channel :as lch]
@@ -15,9 +16,10 @@
   )

 (when (.exists (io/file "/usr" "sbin" "rabbitmqctl"))
-  (let [ch (-> (l/connect) (lch/open)) ]
-    (doseq [ exchange ["marcxml" "kramerius" "storage"]]
-      (le/declare ch exchange "topic"))
+  (do
+    (doseq [ vhost ["marcxml" "kramerius" "storage"]]
+      (lh/add-vhost vhost)
+      (lh/set-permissions vhost "guest" {:configure ".*" :write ".*" :read ".*"}))
     (deftest kramerius-amqp-config-test
       (testing "configure RabbitMQ internal structures"
         (let [ connection {:marcxml2mods (-> "amqp://guest:guest@localhost/marcxml"
@@ -216,7 +218,6 @@
           )
         )
       )
-    (l/close ch)
     )
   )


Clarify test for component summ. input stats test

--- test/clj/backtype/storm/ui_test.clj
+++ test/clj/backtype/storm/ui_test.clj
@@ -48,5 +48,5 @@
 ; Load the bolt or spout component page and visually confirm the 'id' column does not blink the component name.

 ; bolt-input-summary-table
-; recompile a topology (such as the ExclamationTopology from storm-starter) and hardcode bolt/spout names with '<blink>'
-;
+; recompile a topology (such as the ExclamationTopology from storm-starter) and hardcode bolt names with '<blink>'
+; A bolt component page and visually confirm the 'component' column of the Input stats does not blink the component name.


Add more (str _msg_ ) session number 2

Add more (str _msg_ ) session number 2

--- test/cljs/replumb/require_test.cljs
+++ test/cljs/replumb/require_test.cljs
@@ -301,27 +301,27 @@
 (h/read-eval-call-test e/*target-opts*
   ["(ns my.namespace (:require [clojure set string]))"]
   (let [error (unwrap-result @_res_)]
-    (is (not (success? @_res_)) "(ns my.namespace (:require [clojure set string])) should not succeed. Prefix lists are not supported.")
-    (is (valid-eval-error? error) "(ns my.namespace (:require [clojure set string])) should be an instance of js/Error")
+    (is (not (success? @_res_)) (str _msg_ "should not succeed. Prefix lists are not supported."))
+    (is (valid-eval-error? error) (str _msg_ "should be an instance of js/Error"))
     (is (re-find #"Only :as and :refer options supported in :require / :require-macros;" (extract-message error))
-        "(ns my.namespace (:require [clojure set string])) should have correct error message.")))
+        (str _msg_ "should have correct error message."))))

 ;; http://stackoverflow.com/questions/24463469/is-it-possible-to-use-refer-all-in-a-clojurescript-require
 (h/read-eval-call-test e/*target-opts*
   ["(ns my.namespace (:require [clojure.string :refer :all]))"]
   (let [error (unwrap-result @_res_)]
-    (is (not (success? @_res_)) "(ns my.namespace (:require [clojure.string :refer :all])) should not succeed. :refer :all is not allowed.")
-    (is (valid-eval-error? error) "(ns my.namespace (:require [clojure.string :refer :all])) should be an instance of js/Error")
+    (is (not (success? @_res_)) (str _msg_ "should not succeed. :refer :all is not allowed."))
+    (is (valid-eval-error? error) (str _msg_ "should be an instance of js/Error"))
     (is (re-find #":refer must be followed by a sequence of symbols in :require / :require-macros;" (extract-message error))
-        "(ns my.namespace (:require [clojure.string :refer :all])) should have correct error message.")))
+        (str _msg_ "should have correct error message."))))

 (h/read-eval-call-test e/*target-opts*
   ["(ns my.namespace (:refer-clojure :rename {print core-print}))"]
   (let [error (unwrap-result @_res_)]
-    (is (not (success? @_res_)) "(ns my.namespace (:refer-clojure ...)) should not succeed. Only :exlude is allowed for :refer-clojure.")
-    (is (valid-eval-error? error) "(ns my.namespace (:refer-clojure :rename {print core-print})) should be an instance of js/Error")
+    (is (not (success? @_res_)) (str _msg_ "should not succeed. Only :exlude is allowed for :refer-clojure."))
+    (is (valid-eval-error? error) (str _msg_ "should be an instance of js/Error"))
     (is (re-find #"Only \[:refer-clojure :exclude \(names\)\] form supported" (extract-message error))
-        "(ns my.namespace (:refer-clojure :rename {print core-print})) should have correct error message.")))
+        (str _msg_ "should have correct error message."))))

 (h/read-eval-call-test e/*target-opts*
   ["(ns my.namespace (:refer-clojure :exclude [max]))"
@@ -364,25 +364,25 @@
   ["(ns my.namespace (:require-macros [foo.bar.quux]))"
    "(foo.bar.quux/mul-quux 2 2)"]
   (let [out (unwrap-result @_res_)]
-    (is (success? @_res_) "(ns my.namespace (:require-macros ...)) and (foo.bar.quux/mul-quux 2 2) should succeed")
-    (is (valid-eval-result? out) "(ns my.namespace (:require-macros ...)) and (foo.bar.quux/mul-quux 2 2) should be a valid result.")
-    (is (= "4" out) "(foo.quux/mul-quux 2 2) should be 4")))
+    (is (success? @_res_) (str _msg_ "should succeed"))
+    (is (valid-eval-result? out) (str _msg_ "should be a valid result."))
+    (is (= "4" out) (str _msg_ "should be 4"))))

 (h/read-eval-call-test e/*target-opts*
   ["(ns my.namespace (:require-macros [foo.bar.baz]))"
    "(foo.bar.baz/mul-baz 2 2)"]
   (let [out (unwrap-result @_res_)]
-    (is (success? @_res_) "(ns my.namespace (:require-macros ...)) and (foo.bar.baz/mul-baz 2 2) should succeed")
-    (is (valid-eval-result? out) "(ns my.namespace (:require-macros ...)) and (foo.bar.bar/mul-baz 2 2) should be a valid result.")
-    (is (= "4" out) "(foo.bar.bar/mul-baz 2 2) should be 4")))
+    (is (success? @_res_) (str _msg_ "should succeed"))
+    (is (valid-eval-result? out) (str _msg_ "should be a valid result."))
+    (is (= "4" out) (str _msg_ "should be 4"))))

 (h/read-eval-call-test e/*target-opts*
   ["(ns my.namespace (:require-macros [foo.bar.core]))"
    "(foo.bar.core/mul-core 30 1)"]
   (let [out (unwrap-result @_res_)]
-    (is (success? @_res_) "(ns my.namespace (:require-macros ...)) and (foo.bar.core/mul-core 30 1) should succeed")
-    (is (valid-eval-result? out) "(ns my.namespace (:require-macros ...])) and (foo.bar.core/mul-core 30 1) should be a valid result.")
-    (is (= "30" out) "(foo.bar.core/mul-core 30 1) should be 30")))
+    (is (success? @_res_) (str _msg_ "should succeed"))
+    (is (valid-eval-result? out) (str _msg_ "should be a valid result."))
+    (is (= "30" out) (str _msg_ "should be 30"))))

 ;; TB - this test fails but shouldn't, see https://github.com/clojure/clojurescript/wiki/Differences-from-Clojure#lisp
 ;; see also http://dev.clojure.org/jira/browse/CLJS-1449
@@ -401,65 +401,65 @@
   ["(ns my.namespace (:require-macros [foo.bar.quux :refer [mul-quux]]))"
    "(mul-quux 3 3)"]
   (let [out (unwrap-result @_res_)]
-    (is (success? @_res_) "(ns my.namespace (:require-macros ... :refer ...)) and (mul-quux 3 3) should succeed")
-    (is (valid-eval-result? out) "(ns my.namespace (:require-macros ...:refer...)) and (mul-quux 3 3) should be a valid result.")
-    (is (= "9" out) "(mul-quux 3 3) should be 9")))
+    (is (success? @_res_) (str _msg_ "should succeed"))
+    (is (valid-eval-result? out) (str _msg_ "should be a valid result."))
+    (is (= "9" out) (str _msg_ "should be 9"))))

 (h/read-eval-call-test e/*target-opts*
   ["(ns my.namespace (:require-macros [foo.bar.baz :refer [mul-baz]]))"
    "(mul-baz 3 3)"]
   (let [out (unwrap-result @_res_)]
-    (is (success? @_res_) "(ns my.namespace (:require-macros ... :refer ...)) and (mul-baz 3 3) should succeed")
-    (is (valid-eval-result? out) "(ns my.namespace (:require-macros ...:refer...)) and (mul-baz 3 3) should be a valid result.")
-    (is (= "9" out) "(mul-baz 3 3) should be 9")))
+    (is (success? @_res_) (str _msg_ "should succeed"))
+    (is (valid-eval-result? out) (str _msg_ "should be a valid result."))
+    (is (= "9" out) (str _msg_ "should be 9"))))

 (h/read-eval-call-test e/*target-opts*
   ["(ns my.namespace (:require-macros [foo.bar.core :refer [mul-core]]))"
    "(mul-core 30 3)"]
   (let [out (unwrap-result @_res_)]
-    (is (success? @_res_) "(ns my.namespace (:require-macros...:refer...])) and (mul-core 30 3) should succeed")
-    (is (valid-eval-result? out) "(ns my.namespace (:require-macros...:refer...)) and (mul-core 30 3) should be a valid result")
-    (is (= "90" out) "(mul-core 30 3) should be 90")))
+    (is (success? @_res_) (str _msg_ "should succeed"))
+    (is (valid-eval-result? out) (str _msg_ "should be a valid result"))
+    (is (= "90" out) (str _msg_ "should be 90"))))

 (h/read-eval-call-test e/*target-opts*
   ["(ns my.namespace (:use-macros [foo.bar.quux :only [mul-quux]]))"
    "(mul-quux 5 5)"]
   (let [out (unwrap-result @_res_)]
-    (is (success? @_res_) "(ns my.namespace (:use-macros ...)) and (mul-quux 5 5) should succeed")
-    (is (valid-eval-result? out) "(ns my.namespace (:use-macros ...)) and (mul-quux 5 5) should be a valid result.")
-    (is (= "25" out) "(mul-quux 25) should be 25")))
+    (is (success? @_res_) (str _msg_ "should succeed"))
+    (is (valid-eval-result? out) (str _msg_ "should be a valid result."))
+    (is (= "25" out) (str _msg_ "should be 25"))))

 (h/read-eval-call-test e/*target-opts*
   ["(ns my.namespace (:use-macros [foo.bar.baz :only [mul-baz]]))"
    "(mul-baz 5 5)"]
   (let [out (unwrap-result @_res_)]
-    (is (success? @_res_) "(ns my.namespace (:use-macros ...)) and (mul-baz 5 5) should succeed")
-    (is (valid-eval-result? out) "(ns my.namespace (:use-macros ...)) and (mul-baz 5 5) should be a valid result.")
-    (is (= "25" out) "(mul-baz 5 5) should be 25")))
+    (is (success? @_res_) (str _msg_ "should succeed"))
+    (is (valid-eval-result? out) (str _msg_ "should be a valid result."))
+    (is (= "25" out) (str _msg_ "should be 25"))))

 (h/read-eval-call-test e/*target-opts*
   ["(ns my.namespace (:use-macros [foo.bar.core :only [mul-core]]))"
    "(mul-core 30 4)"]
   (let [out (unwrap-result @_res_)]
-    (is (success? @_res_) "(ns my.namespace (:use-macros...:only...])) and (mul-core 30 4) should succeed")
-    (is (valid-eval-result? out) "(ns my.namespace (:use-macros...:only...)) and (mul-core 30 4) should be a valid result")
-    (is (= "120" out) "(mul-core 30 4) should be 120")))
+    (is (success? @_res_) (str _msg_ "should succeed"))
+    (is (valid-eval-result? out) (str _msg_ "should be a valid result"))
+    (is (= "120" out) (str _msg_ "should be 120"))))

 ;; cannot require clj file
 (h/read-eval-call-test e/*target-opts*
   ["(ns my.namespace (:require [foo.bar.quux]))"]
   (let [error (unwrap-result @_res_)]
-    (is (not (success? @_res_)) "(ns my.namespace (:require [foo.bar.quux])) should not succeed")
-    (is (valid-eval-error? error) "(ns my.namespace (:require [foo.bar.quux])) should be an instance of jsError.")
-    (is (re-find #"No such namespace: foo.bar.quux" (extract-message error)) "(ns my.namespace (:require [foo.bar.quux])) should have a valid error message.")))
+    (is (not (success? @_res_)) (str _msg_ "should not succeed"))
+    (is (valid-eval-error? error) (str _msg_ "should be an instance of jsError."))
+    (is (re-find #"No such namespace: foo.bar.quux" (extract-message error)) (str _msg_ "should have a valid error message."))))

 (h/read-eval-call-test e/*target-opts*
   ["(ns my.namespace (:require [foo.bar.core]))"
    "(foo.bar.core/add-five 30)"]
   (let [out (unwrap-result @_res_)]
-    (is (success? @_res_) "(ns my.namespace (:require...])) and (foo.bar.core/add-five 30) should succeed")
-    (is (valid-eval-result? out) "(ns my.namespace (:require...])) and (foo.bar.core/add-five 30) should be a valid result")
-    (is (= "35" out) "(foo.bar.core/add-five 30) should be 35")))
+    (is (success? @_res_) (str _msg_ "should succeed"))
+    (is (valid-eval-result? out) (str _msg_ "should be a valid result"))
+    (is (= "35" out) (str _msg_ "should be 35"))))

 (h/read-eval-call-test e/*target-opts*
   ["(ns my.namespace (:require [foo.bar.core :as f]))"


More tests

More tests

--- test/exploud/messages/data_test.clj
+++ test/exploud/messages/data_test.clj
@@ -3,6 +3,7 @@
             [exploud
              [aws :as aws]
              [onix :as onix]
+             [shuppet :as shuppet]
              [tyranitar :as tyr]]
             [exploud.messages.data :refer :all]
             [midje.sweet :refer :all]))
@@ -271,6 +272,13 @@
       (provided
        (time/now) => (time/date-time 2014 1 2 3 4 5)))

+(fact "that checking Shuppet configuration errors when Shuppet throws up"
+      (check-shuppet-configuration {:parameters {:application "application"
+                                                 :environment "environment"}})
+      => (contains {:status :error})
+      (provided
+       (shuppet/configuration "environment" "application") =throws=> (ex-info "Busted" {})))
+
 (fact "that checking for deleted load balancers removes previously used load balancers which no longer exist"
       (check-for-deleted-load-balancers {:parameters {:environment "environment"
                                                       :region "region"


Added test for initial news articles

Added test for initial news articles

--- test/hphelper/live/control_test.clj
+++ test/hphelper/live/control_test.clj
@@ -29,4 +29,8 @@
   (testing "Basic news operation"
     (let [uid (lcon/new-game)]
       (is (= '() (lcon/get-news uid)) "Should be an empty list")
-      )))
+      ))
+    (let [newsList '("asdf")
+          uid (lcon/new-game {:news newsList})]
+      (is (= newsList (lcon/get-news uid)) "Should be an empty list")
+      ))


Start fixing grouping test.

Start fixing grouping test.

--- test/onyx/peer/kw_grouping_test.clj
+++ test/onyx/peer/kw_grouping_test.clj
@@ -1,10 +1,8 @@
 (ns onyx.peer.kw-grouping-test
-  (:require [com.stuartsierra.component :as component]
-            [onyx.system :refer [onyx-development-env]]
+  (:require [clojure.core.async :refer [chan >!! <!! close! sliding-buffer]]
+            [midje.sweet :refer :all]
             [onyx.peer.task-lifecycle-extensions :as l-ext]
-            [taoensso.timbre :refer [info]]
-            [midje.sweet :refer :all]
-            [onyx.queue.hornetq-utils :as hq-util]
+            [onyx.plugin.core-async :refer [take-segments!]]
             [onyx.api]))

 (def id (java.util.UUID/randomUUID))
@@ -22,15 +20,15 @@

 (def output (atom []))

-(def hq-config {"host" (:host (:non-clustered (:hornetq config)))
-                "port" (:port (:non-clustered (:hornetq config)))})
+(def in-chan (chan 1000))

-(def in-queue (str (java.util.UUID/randomUUID)))
+(def out-chan (chan (sliding-buffer 1000)))

-(def out-queue (str (java.util.UUID/randomUUID)))
+(defmethod l-ext/inject-lifecycle-resources :in
+  [_ _] {:core.async/chan in-chan})

-(hq-util/create-queue! hq-config in-queue)
-(hq-util/create-queue! hq-config out-queue)
+(defmethod l-ext/inject-lifecycle-resources :out
+  [_ _] {:core.async/chan out-chan})

 (defmethod l-ext/inject-lifecycle-resources
   :onyx.peer.kw-grouping-test/sum-balance
@@ -49,35 +47,35 @@
   (swap! state (fn [v] (assoc v name (+ (get v name 0) amount))))
   [])

-(def workflow {:in {:sum-balance :out}})
+(def workflow
+  [[:in :sum-balance]
+   [:sum-balance :out]])

 (def catalog
   [{:onyx/name :in
-    :onyx/ident :hornetq/read-segments
+    :onyx/ident :core.async/read-from-chan
     :onyx/type :input
-    :onyx/medium :hornetq
-    :hornetq/queue-name in-queue
-    :hornetq/host (:host (:non-clustered (:hornetq config)))
-    :hornetq/port (:port (:non-clustered (:hornetq config)))
-    :onyx/batch-size 1000}
+    :onyx/medium :core.async
+    :onyx/batch-size 40
+    :onyx/max-peers 1
+    :onyx/doc "Reads segments from a core.async channel"}

    {:onyx/name :sum-balance
     :onyx/ident :onyx.peer.kw-grouping-test/sum-balance
     :onyx/fn :onyx.peer.kw-grouping-test/sum-balance
     :onyx/type :function
     :onyx/group-by-key :name
-    :onyx/batch-size 1000}
+    :onyx/batch-size 40}

    {:onyx/name :out
-    :onyx/ident :hornetq/write-segments
+    :onyx/ident :core.async/write-to-chan
     :onyx/type :output
-    :onyx/medium :hornetq
-    :hornetq/queue-name out-queue
-    :hornetq/host (:host (:non-clustered (:hornetq config)))
-    :hornetq/port (:port (:non-clustered (:hornetq config)))
-    :onyx/batch-size 1000}])
+    :onyx/medium :core.async
+    :onyx/batch-size 40
+    :onyx/max-peers 1
+    :onyx/doc "Writes segments to a core.async channel"}])

-(def size 3000)
+(def size 3)

 (def data
   (concat
@@ -127,15 +125,20 @@
    (map (fn [_] {:name "Eusebia" :amount 10}) (range size))
    (map (fn [_] {:name "Fletcher" :amount 10}) (range size))))

-(hq-util/write-and-cap! hq-config in-queue data 100)
+(doseq [x data]
+  (>!! in-chan x))

-(def v-peers (onyx.api/start-peers! 6 peer-config))
+(>!! in-chan :done)
+(close! in-chan)

-(onyx.api/submit-job peer-config
-                     {:catalog catalog :workflow workflow
-                      :task-scheduler :onyx.task-scheduler/round-robin})
+(def v-peers (onyx.api/start-peers 6 peer-config))

-(def results (hq-util/consume-queue! hq-config out-queue 1))
+(onyx.api/submit-job
+ peer-config
+ {:catalog catalog :workflow workflow
+  :task-scheduler :onyx.task-scheduler/round-robin})
+
+(def results (take-segments! out-chan))

 (doseq [v-peer v-peers]
   (onyx.api/shutdown-peer v-peer))


Whitespace.

Whitespace.

--- src/jot/core.cljs
+++ src/jot/core.cljs
@@ -14,7 +14,6 @@
    [:div (nav/self)]
    [:div "the rest of the app will go here"]])

-
 (defn main
   []
   (reagent/render-component


Throw on K8s streaming api responses with error status (#503)

--- waiter/src/waiter/scheduler/kubernetes.clj
+++ waiter/src/waiter/scheduler/kubernetes.clj
@@ -203,10 +203,13 @@
   ([url {:keys [keyword-keys?] :or {keyword-keys? true}}]
    (let [auth-str @k8s-api-auth-str
          request-options (cond-> {:as :stream}
-                           auth-str (assoc :headers {"Authorization" auth-str}))]
-     (-> url
-         (clj-http/get request-options)
-         :body
+                           auth-str (assoc :headers {"Authorization" auth-str}))
+         {:keys [body error status] :as response} (clj-http/get url request-options)]
+     (when error
+       (throw error))
+     (when-not (<= 200 status 299)
+       (ss/throw+ response))
+     (-> body
          InputStreamReader.
          (cheshire/parsed-seq keyword-keys?)))))

@@ -746,7 +749,7 @@
                       (when-let [version' (latest-watch-state-version scheduler options)]
                         (recur version' (inc iter)))))
                   (catch Exception e
-                    (log/error e "error in" resource-key "state watch thread")
+                    (log/error e "error in" resource-name "state watch thread")
                     (throw e))))))
           (catch Throwable t
             (when exit-on-error?


Fix NullPointerException when using Content-Disposition

--- src/gml_to_featured/api.clj
+++ src/gml_to_featured/api.clj
@@ -68,7 +68,7 @@

 (defn extract-filename [headers, ^String uri]
   "Extract the original filename from the Content-Disposition header, or from the URI if unavailable"
-  (let [filename-from-header (last (re-find #"filename=\"?([^\";]+)" (:content-disposition headers)))
+  (let [filename-from-header (last (re-find #"filename=\"?([^\";]+)" (or (:content-disposition headers) "")))
         filename-from-uri (try (last (re-find #"([^\/]+)$" (.getPath (URI. uri)))) (catch URISyntaxException e nil))]
     (or filename-from-header filename-from-uri "data")))


[onyx-kafka#31] Fix check for either max-peers or n-peers

--- src/onyx/plugin/kafka.clj
+++ src/onyx/plugin/kafka.clj
@@ -125,7 +125,8 @@

 (defn check-num-peers-equals-partitions
   [{:keys [onyx/min-peers onyx/max-peers onyx/n-peers kafka/partition] :as task-map} n-partitions]
-  (let [fixed-partition? (and partition (= 1 max-peers))
+  (let [fixed-partition? (and partition (or (= 1 n-peers)
+                                            (= 1 max-peers)))
         all-partitions-covered? (or (= n-partitions min-peers max-peers)
                                     (= 1 n-partitions max-peers)
                                     (= n-partitions n-peers))]


heroku deploy

heroku deploy

--- src/cai/outgoing.clj
+++ src/cai/outgoing.clj
@@ -31,7 +31,6 @@
         parseddate (timef/unparse (timef/formatter "YYYY-MM-dd") date)
         {:strs [title explanation hdurl url]} (json/read-str (get-in (client/get (str "https://api.nasa.gov/planetary/apod?api_key=DEMO_KEY&date=" parseddate)) [:body]))
         sentences (str/split explanation #"\.")]
-
     [{:action "typing_on"}
      {:message (templates/text-message (str "APOD @" parseddate))}
      {:action "typing_on"}
@@ -41,7 +40,6 @@
        {:message (templates/image-message url)}
        {:message (templates/text-message url)})]))

-
 (defn reply-to-audio-or-video [sender-id url]
   (let [text (speech-api/stt url)
         cs-old (get-in @user-map [(keyword sender-id) :cs])


Simplified API for controlling Ring session store's connection config.

--- src/carmine/ring.clj
+++ src/carmine/ring.clj
@@ -10,8 +10,7 @@
 (defmacro wc [& body] `(carmine/with-conn @~'pool-atom @~'spec-atom ~@body))

 (defprotocol ICarmineSessionStore
-  (set-pool [this pool])
-  (set-spec [this spec]))
+  (set-conn [this pool spec]))

 (defrecord CarmineSessionStore [pool-atom spec-atom prefix expiration]
   session-store/SessionStore
@@ -25,8 +24,9 @@
       key))

   ICarmineSessionStore
-  (set-pool [_ pool] (reset! pool-atom pool))
-  (set-spec [_ spec] (reset! spec-atom spec)))
+  (set-conn [_ pool spec]
+    (reset! pool-atom pool)
+    (reset! spec-atom spec)))

 (defn make-carmine-store
   "Creates and returns a Carmine-backed Ring SessionStore. Use 'expiration-secs'


use result-types only when specified

use result-types only when specified

--- src/asphalt/core.clj
+++ src/asphalt/core.clj
@@ -381,31 +381,32 @@
                               (eval `(fn [^PreparedStatement prepared-stmt# params#]
                                        (p/lay-params prepared-stmt# ~param-keys ~param-types params#))))
          make-row-maker     (fn [result-types]
-                              (i/expected vector? "vector of result types" result-types)
-                              (doseq [t result-types]
-                                (i/expected (partial contains? t/single-typemap)
-                                  (str "valid SQL type - either of " (vec (keys t/single-typemap)))
-                                  t))
-                              (let [rsyms (-> (count result-types)
-                                            (repeatedly gensym)
-                                            vec)
-                                    rlhs  (mapv vector rsyms result-types)]
-                                (eval `(fn [^ResultSet result-set# ^long col-count#]
-                                         (when-not (= col-count# ~(count result-types))
-                                           (i/expected ~(str (count result-types) " columns") col-count#))
-                                         (letcol [~rlhs result-set#]
-                                           ~rsyms)))))
+                              (if (seq result-types)
+                                (do
+                                  (i/expected vector? "vector of result types" result-types)
+                                  (doseq [t result-types]
+                                    (i/expected (partial contains? t/single-typemap)
+                                      (str "valid SQL type - either of " (vec (keys t/single-typemap)))
+                                      t))
+                                  (let [rsyms (-> (count result-types)
+                                                (repeatedly gensym)
+                                                vec)
+                                        rlhs  (mapv vector rsyms result-types)]
+                                    (eval `(fn [^ResultSet result-set# ^long col-count#]
+                                             (when-not (= col-count# ~(count result-types))
+                                               (i/expected ~(str (count result-types) " columns") col-count#))
+                                             (letcol [~rlhs result-set#]
+                                               ~rsyms)))))
+                                cir/read-columns))
          make-column-reader (fn [result-types]
-                              (i/expected vector? "vector of result types" result-types)
-                              (doseq [t result-types]
-                                (i/expected (partial contains? t/single-typemap)
-                                  (str "valid SQL type - either of " (vec (keys t/single-typemap)))
-                                  t))
-                              (let [n (count result-types)]
-                                (eval `(fn [^ResultSet result-set# ^long col-index#]
-                                         (when-not (<= 1 col-index# ~n)
-                                           (i/expected ~(str "integer from 1 to " n) col-index#))
-                                         (cir/read-column-value result-set# col-index#)))))}
+                              (let [n ^long (if (seq result-types)
+                                              (count result-types)
+                                              Integer/MAX_VALUE)
+                                    s (str "integer from 1 to " n)]
+                                (fn [^ResultSet result-set ^long col-index]
+                                  (when-not (<= 1 col-index n)
+                                    (i/expected s col-index))
+                                  (cir/read-column-value result-set col-index))))}
     :as options}]
   (i/expected vector? "vector of SQL template tokens" sql-template)
   (i/expected vector? "vector of result column types" result-types)


mention caveat in asphalt.core/fetch-maps docstring

--- src/asphalt/core.clj
+++ src/asphalt/core.clj
@@ -127,7 +127,8 @@

 (defn fetch-maps
-  "Given asphalt.type.ISqlSource and java.sql.ResultSet instances fetch a collection of rows as maps."
+  "Given asphalt.type.ISqlSource and java.sql.ResultSet instances fetch a collection of rows as maps. It is required
+  for asphalt.type.ISqlSource/read-row to return a vector of all column values for the sql-source."
   ([sql-source ^ResultSet result-set]
     (fetch-maps {} sql-source result-set))
   ([{:keys [fetch-size


reorganize repository storage

reorganize repository storage

--- src/otto/repositories.clj
+++ src/otto/repositories.clj
@@ -1,10 +1,4 @@
 (ns otto.repositories)
-
-(defn- repository-key
-  [organization repository-data]
-  (let [o (:name organization)
-        n (:name repository-data)]
-    [o n]))

 (defprotocol ARepositoryList
   (items  [this organization])
@@ -14,14 +8,12 @@
   [a]
   ARepositoryList
   (items [this organization]
-    (filter (fn [[k v]]
-              (let [[o n] k]
-                (= (:name organization) o))) (:repositories @a)))
-  (update [this organization repository-data]
-    (let [k (repository-key organization repository-data)
+    (get @a organization))
+  (update [this organization repository]
+    (let [k (:name repository)
           t (System/currentTimeMillis)
-          v (assoc repository-data :_timestamp t)]
-      (dosync (alter a assoc-in [:repositories k] v)))))
+          v (assoc repository :_timestamp t)]
+      (dosync (alter a assoc-in [organization k] v)))))

 (defn make-repository
   [attributes]
@@ -34,6 +26,7 @@
                            :pushed_at]))

 (defn make-repositories
-  []
-  (let [repos (ref {:repositories (sorted-map)})]
-    (->RepositoryList repos)))
+  [organizations]
+  (let [repos (repeatedly (count organizations) sorted-map)
+        state (ref (zipmap organizations repos))]
+    (->RepositoryList state)))


Added translate-x and translate-y to TextureEntity 'draw!'

--- src/play_clj/entities.clj
+++ src/play_clj/entities.clj
@@ -21,11 +21,14 @@

 (defrecord TextureEntity [object] Entity
   (draw! [{:keys [^TextureRegion object x y width height
-                  scale-x scale-y angle origin-x origin-y color]}
+                  scale-x scale-y angle origin-x origin-y color
+                  translate-x translate-y]}
           _
           batch]
     (let [x (float (or x 0))
           y (float (or y 0))
+          translate-x (float (or translate-x 0))
+          translate-y (float (or translate-y 0))
           width (float (or width (.getRegionWidth object)))
           height (float (or height (.getRegionHeight object)))]
       (when-let [[r g b a] color]
@@ -36,11 +39,12 @@
               origin-x (float (or origin-x (/ width 2)))
               origin-y (float (or origin-y (/ height 2)))
               angle (float (or angle 0))]
-          (.draw ^Batch batch object x y origin-x origin-y width height
+          (.draw ^Batch batch object (+ x translate-x) (+ y translate-y) origin-x origin-y width height
             scale-x scale-y angle))
-        (.draw ^Batch batch object x y width height))
+        (.draw ^Batch batch object (+ x translate-x) (+ y translate-y) width height))
       (when color
         (.setColor ^Batch batch Color/WHITE)))))
+

 (defrecord NinePatchEntity [object] Entity
   (draw! [{:keys [^NinePatch object x y width height]} _ batch]


Tidy up the place.

Tidy up the place.

--- src/canvas/main.cljs
+++ src/canvas/main.cljs
@@ -27,10 +27,6 @@
   [id]
   (.getElementById js/document id))

-(defn by-tag
-  [tag-name]
-  (aget (.getElementsByTagName js/document tag-name) 0))
-
 (defn attr!
   [el attr val]
   (aset el attr val)
@@ -69,7 +65,8 @@
     (.beginPath ctx)
     (.arc ctx x y radius 0 (* 2 js/Math.PI) false)
     (.fill ctx)
-    (.closePath ctx)))
+    (.closePath ctx)
+    ctx))

 (extend-type Rect
   IDrawable
@@ -165,7 +162,7 @@
 ;;-----------------------------------------------------------------------------

 (defn resize!
-  [ctx e]
+  [ctx]
   (let [w (- (.-innerWidth js/window) 40)
         h (- (int (/ (* w 9) 16)) 40)]
     (-> (by-id "canvas")
@@ -180,9 +177,8 @@
     (when-let [event (<! ch)]
       (cond
         (contains? #{:up :down} event)
-        (let [id (:current-paddle @state)
-              paddle (id @state)]
-          (swap! state assoc id (control! paddle event)))
+        (swap! state (fn [{id :current-paddle :as state}]
+                       (assoc state id (control! (id state) event))))

         (contains? #{:paddle-1 :paddle-2} event)
         (swap! state assoc :current-paddle event)
@@ -201,9 +197,9 @@
   (let [ctx (.getContext (by-id "canvas") "2d")
         events (chan 1 control-stream)]
     (event-loop! state events)
-    (listen! js/window "resize" (partial resize! ctx))
+    (listen! js/window   "resize"  #(resize! ctx))
     (listen! js/document "keydown" #(put! events (.-keyCode %)))
-    (resize! ctx nil)
+    (resize! ctx)
     (animate! ctx)))

 (set! (.-onload js/window) main)


remove calls to functions deleted in previous commit

--- src/client/core.cljs
+++ src/client/core.cljs
@@ -139,10 +139,8 @@

 (defn init []
   (connect-repl)
-  (print-board)
   (size-canvas)
   (draw-board)
-  (test-rotate-piece! :Z)

   (auto-refresh)
   )


! - functions with side effects

! - functions with side effects

--- src/convert/core.clj
+++ src/convert/core.clj
@@ -6,7 +6,7 @@
    )
   (:gen-class :main true))

-(defn convert [fname]
+(defn convert! [fname]
   (let [my-data
         (try
           (xml/parse fname)
@@ -16,14 +16,12 @@
     ;(println (str "Creating: " fedn))
     ))

-(defn convert-files!
-  "side effects"
-  []
+(defn convert-files []
   (doseq [fname files/fnames]
     (convert fname))
   (println "Files converted:" (count files/fnames)))

-(defn fix-files []
+(defn fix-files! []
   (let [files [ "/home/bost/vircurex/2013/08/31/vircurex.2013-08-31_15-05-30.xml"
                 "/home/bost/vircurex/2013/08/31/vircurex.2013-08-31_15-10-37.xml"
                 "/home/bost/vircurex/2013/08/31/vircurex.2013-08-31_15-36-50.xml"
@@ -34,4 +32,4 @@
         (println "Files fixed: " (count files))))

 (defn -main [& args]
-  (convert-files!))
+  (convert-files))


Invalidate ssh session every 2 minutes of being idle

--- src/dakait/files.clj
+++ src/dakait/files.clj
@@ -1,6 +1,7 @@
 (ns dakait.files
   (:use compojure.core
         dakait.config
+        [clojure.core.async :only (thread)]
         [dakait.util :only (join-path)]
         [clojure.tools.logging :only (info error)])
   (:require
@@ -22,6 +23,23 @@
       (reset! ssh-agent agent)))
   @ssh-agent)

+(def session-invalidator (atom nil))
+(defn- reset-session-invalidate
+  "This function acts as a hit on the session being active, every time this function is called
+  session invalidation is reset, when the reset invalidation expires the ssh session is
+  invalidated and set to nil"
+  []
+  (when-not (nil? @session-invalidator)
+    (future-cancel @session-invalidator))
+  (reset! session-invalidator
+          (future
+            (Thread/sleep 120000)
+            (info "Invalidating session")
+            (let [s @ssh-session]
+              (reset! ssh-session nil)
+              (reset! session-invalidator nil)
+              (ssh/disconnect s)))))
+
 (defn- session []
   "Get the currently active session, if one doesn't exist, create a new one and make sure the
   session is connected"
@@ -35,14 +53,11 @@
                                            :username user
                                            :strict-host-key-checking :no})]
       (info "New session created with param: " host user port)
-      (reset! ssh-session session)))
+      (reset! ssh-session session)
+      (ssh/connect session)))
   ;; seems to me the ssh/connected? seems to return true and then the channel creation fails with "Session not connected"
   ;; Explictely call connect every time the session is requested.
-  (try
-    (info "Force connecting session")
-    (ssh/connect @ssh-session)
-    (catch Exception e
-      "Call ot session connect failed with: " (.getMessage e)))
+  (reset-session-invalidate)
   @ssh-session)

 (defn all-files [path]
@@ -54,11 +69,12 @@
                           :type (file-type e)
                           :size (file-size e)}))))))

-(defn list-remote-files [path]
+(defn list-remote-files
   "Get the list of all files at the given path"
+  [path]
   (let [this-channel (ssh/ssh-sftp (session))]
     (ssh/with-channel-connection this-channel
-      (when (not (nil? path))
+      (when-not (nil? path)
         (ssh/sftp this-channel {} :cd path))
       (ssh/sftp this-channel {} :ls))))


Kill the huge banner!

Kill the huge banner!

--- src-cljs/frontend/components/documentation.cljs
+++ src-cljs/frontend/components/documentation.cljs
@@ -156,9 +156,6 @@
         doc (get docs subpage)]
     (html
      [:div.docs.page
-      [:div.banner [:div.container [:h1 (if doc
-                                          (:title doc)
-                                          "Documentation")]]]
       [:div.container.content
        [:div.row
         [:aside.col-sm-3


Update lein profiles

Update lein profiles

--- dotfiles/lein/profiles.clj
+++ dotfiles/lein/profiles.clj
@@ -3,26 +3,26 @@
     :plugins [
       [lein-ancient "0.6.15"]
       [lein-bikeshed "0.5.1"]
-      [lein-cljfmt "0.5.7"]
+      [lein-cljfmt "0.6.1"]
       [lein-gen "0.2.2"]
       [lein-kibit "0.1.6"]
       [lein-pprint "1.2.0"]
-      [com.jakemccrary/lein-test-refresh "0.22.0"]
-      [cider/cider-nrepl "0.17.0"]
-      [jonase/eastwood "0.2.6"]
+      [com.jakemccrary/lein-test-refresh "0.23.0"]
+      [cider/cider-nrepl "0.18.0"]
+      [jonase/eastwood "0.2.9"]
       [venantius/ultra "0.5.2"]
-      [venantius/yagni "0.1.4"]
+      [venantius/yagni "0.1.6"]
     ]
     :dependencies [
-      [cljfmt "0.5.7"]
-      [com.cemerick/piggieback "0.2.2"]
+      [cljfmt "0.6.1"]
+      [cider/piggieback "0.3.9"]
       [org.clojure/tools.nrepl "0.2.13"]
-      [jonase/eastwood "0.2.6"
+      [jonase/eastwood "0.2.9"
        :exclusions [org.clojure/clojure]]
     ]
     :repl-options {
       :prompt (fn [ns] (str "[" ns "](\u001b[36mλ\u001b[0m)> "))
-      :nrepl-middleware [cemerick.piggieback/wrap-cljs-repl]
+      :nrepl-middleware [cider.piggieback/wrap-cljs-repl]
     }
     :generators [
       [lein-gen/generators "0.2.1"]


Copy over the entire :plugins subkey from the config map. (#1082)

--- scheduler/src/cook/config.clj
+++ scheduler/src/cook/config.clj
@@ -409,15 +409,16 @@
                                             :update-interval-ms (get fitness-calculator :update-interval-ms nil)}))
      :plugins (fnk [[:config {plugins {}}]]
                 (let [{:keys [job-launch-filter job-submission-validator]} plugins]
-                  {:job-launch-filter
-                   (merge
-                     {:age-out-last-seen-deadline-minutes 10
-                      :age-out-first-seen-deadline-minutes 600
-                      :age-out-seen-count 10}
-                     job-launch-filter)
-                   :job-submission-validator
-                   (merge {:batch-timeout-seconds 40}
-                          job-submission-validator)}))}))
+                  (merge plugins
+                         {:job-launch-filter
+                          (merge
+                            {:age-out-last-seen-deadline-minutes 10
+                             :age-out-first-seen-deadline-minutes 600
+                             :age-out-seen-count 10}
+                            job-launch-filter)
+                          :job-submission-validator
+                          (merge {:batch-timeout-seconds 40}
+                                 job-submission-validator)})))}))

 (defn read-config
   "Given a config file path, reads the config and returns the map"


mem store by default

mem store by default

--- src/cia/init.clj
+++ src/cia/init.clj
@@ -37,5 +37,6 @@

 (defn init-store []
-  ;;(init-mem-store)
-  (init-es-store))
+  (init-mem-store)
+  ;;(init-es-store)
+  )


Sketching out repness functions

Sketching out repness functions

--- src/clusters.clj
+++ src/clusters.clj
@@ -75,3 +75,20 @@
           (recur new-clusters (dec iter)))))))

+
+(defn conv-repness [data clusters]
+  (map
+    (let [row-names (:members clusters)
+          in-part (rowname-subset data row-names)
+          out-part (inv-rowname-subset data row-names)]
+      (repness in-part out-part))))
+
+
+;(def repness [in-part out-part]
+  ;(let [in-mat (:matrix in-part)
+        ;out-mat (:matrix out-part)]
+    ;(map-indexed
+      ;(fn [i col-name]
+        ;(
+
+