s/:nrLessonGroups/:nrLessons/g

s/:nrLessonGroups/:nrLessons/g

Since we really are tracking the number of lessons in a row and not the
number of lesson groups.

Signed-off-by: Pang Yan Han <22594c345857f664c61cd411f607c4d40a9d4af9@gmail.com>

--- src/cljs/cljs_nusmods/timetable.cljs
+++ src/cljs/cljs_nusmods/timetable.cljs
@@ -159,27 +159,27 @@
    following format:

        {
-         :nrLessonGroups (integer representing the number of lesson groups
-                          occupying the current row)
-         :occupied        a vector of timeslots from 0800 to 2330 (inclusive)
-                          in 30 min intervals. Each slot is one of:
-                          - nil. The means that the slot is free
-                          - a map of module information:
-                            {
-                              :moduleCode -> module code string
-                              :lessonType -> lesson type string (long form),
-                              :lessonGroup -> Lesson group string (lesson label)
-                              :index       -> index to the list of lessons for
-                                              that lesson group.
-                            }
-                            This information can be used to access the <div> in
-                            the `ModulesSelected` global during module removal
-                            or lesson shifting.
+         :nrLessons (integer representing the number of lesson groups
+                     occupying the current row)
+         :occupied  a vector of timeslots from 0800 to 2330 (inclusive)
+                    in 30 min intervals. Each slot is one of:
+                    - nil. The means that the slot is free
+                    - a map of module information:
+                      {
+                        :moduleCode -> module code string
+                        :lessonType -> lesson type string (long form),
+                        :lessonGroup -> Lesson group string (lesson label)
+                        :index       -> index to the list of lessons for
+                                        that lesson group.
+                      }
+                      This information can be used to access the <div> in
+                      the `ModulesSelected` global during module removal
+                      or lesson shifting.
        }"
   []
   {
-    :nrLessonGroups 0,
-    :occupied       (vec (map (fn [t] nil) (range 800 2400 50)))
+    :nrLessons 0,
+    :occupied  (vec (map (fn [t] nil) (range 800 2400 50)))
   })

 (defn- create-day-repr
@@ -268,7 +268,7 @@
           Timetable [day rowNum]
           (fn [ttRow]
             {
-              :nrLessonGroups (inc (:nrLessonGroups ttRow))
+              :nrLessons (inc (:nrLessons ttRow))
               :occupied       (reduce (fn [occupiedVec idx]
                                         (assoc occupiedVec idx modInfo))
                                       (:occupied ttRow)
@@ -297,8 +297,8 @@
           (update-in
             Timetable [day row]
             (fn [ttRow]
-              {:nrLessonGroups (dec (:nrLessonGroups ttRow))
-               :occupied       occupiedVec})))))
+              {:nrLessons (dec (:nrLessons ttRow))
+               :occupied  occupiedVec})))))

 (defn- find-free-row-for-lesson
   "Returns the 0-indexed row which can accomodate the given lesson (timeslots
@@ -316,7 +316,7 @@
             (:foundFreeRow result)
             result

-            (zero? (:nrLessonGroups row))
+            (zero? (:nrLessons row))
             (assoc result :foundFreeRow true)

             (not (some (fn [x] (not (nil? x)))


add sexy confirmation on delete

add sexy confirmation on delete

--- src/cljs/load_test_om/load_test.cljs
+++ src/cljs/load_test_om/load_test.cljs
@@ -18,7 +18,8 @@
                    (apply min times)))))

 (defn handle-delete [id]
-  (.remove (js/Firebase. (str firebase-url "/" id))))
+  (when (.confirm js/window "Are you sure?")
+    (.remove (js/Firebase. (str firebase-url "/" id)))))

 (defn minimized-view [{:keys [resource action id data-points] :as load-test} owner]
   (dom/div #js {:className "minimised-view"}


Fix user profile follow new modal

Fix user profile follow new modal

--- src/cljs/salava/user/ui/profile.cljs
+++ src/cljs/salava/user/ui/profile.cljs
@@ -10,6 +10,7 @@
             [salava.core.i18n :refer [t]]
             [salava.core.time :refer [date-from-unix-time]]
             [salava.core.helper :refer [dump]]
+            [salava.core.ui.modal :as mo]
             [reagent-modals.modals :as m]
             [salava.core.ui.error :as err]
             [salava.admin.ui.admintool :refer [admintool]]
@@ -43,12 +44,20 @@
       [:div.media-content
        (if image_file
          [:div.media-left
-          [:a {:href (path-for (str "/badge/info/" id))}
+          [:a{:href "#"
+              :on-click #(do
+                           (mo/open-modal [:badge :info] {:badge-id id})
+                                        ;(b/open-modal id false init-data state)
+                           (.preventDefault %)) }
             [:img {:src (str "/" image_file)
                  :alt name}]]])
        [:div.media-body
         [:div.media-heading
-         [:a.heading-link {:href (path-for (str "/badge/info/" id))}
+         [:a.heading-link {:href "#"
+                           :on-click #(do
+                                        (mo/open-modal [:badge :info] {:badge-id id})
+                                        ;(b/open-modal id false init-data state)
+                                        (.preventDefault %)) }
           name]]
         [:div.media-issuer
          [:p issuer_content_name]]]]]
@@ -63,7 +72,7 @@
       [:div.media-content
        [:div.media-body
         [:div.media-heading
-         [:a.heading-link {:href (path-for (str "/page/view/" id))} name]]
+         [:a.heading-link  {:href "#" :on-click #(mo/open-modal [:page :view] {:page-id id})}  name]]
         [:div.media-content
          [:div.page-owner
           [:a {:href "#"} first_name " " last_name]]


natural order

natural order

--- src/clojure/zensols/nlparse/core.clj
+++ src/clojure/zensols/nlparse/core.clj
@@ -4,6 +4,13 @@
             [zensols.actioncli.resource :as res])
   (:require [parse.version])
   (:gen-class :main true))
+
+(def ^:private version-info-command
+  {:description "Get the version of the application."
+   :options [["-g" "--gitref"]]
+   :app (fn [{refp :gitref} & args]
+          (println parse.version/version)
+          (if refp (println parse.version/gitref)))})

 (defn initialize
   "Initialize model resource locations.
@@ -20,13 +27,6 @@
   (res/register-resource :model :system-property "model")
   (res/register-resource :stanford-model :pre-path :model))

-(def ^:private version-info-command
-  {:description "Get the version of the application."
-   :options [["-g" "--gitref"]]
-   :app (fn [{refp :gitref} & args]
-          (println parse.version/version)
-          (if refp (println parse.version/gitref)))})
-
 (defn- create-command-context []
   {:command-defs '((:repl zensols.actioncli repl repl-command)
                    (:parse zensols.nlparse parse parse-command))


Try using `DATABASE_URL` instead of `REGARDE_DATABASE_URL`

--- src/regarde/db.clj
+++ src/regarde/db.clj
@@ -5,7 +5,7 @@
             [environ.core]))

 (defn db-name [env]
-  (if-let [env-database (environ.core/env :regarde-database-url)]
+  (if-let [env-database (environ.core/env :database-url)]
     env-database
     (str "jdbc:postgresql://localhost:5432/"
          (cond


Use retina images for header and footer.

--- src/oc/email/content.clj
+++ src/oc/email/content.clj
@@ -243,8 +243,7 @@
             [:th {:class "small-2 large-2 columns header-icon"}
               [:a
                 {:href config/web-url}
-                [:img {:src (str config/email-images-prefix "/email_images/carrot_logo_with_copy_colors.png")
-                       :srcSet (str config/email-images-prefix "/email_images/carrot_logo_with_copy_colors@2x.png 2x")
+                [:img {:src (str config/email-images-prefix "/email_images/carrot_logo_with_copy_colors@2x.png")
                        :width "74"
                        :height "18"
                        :alt "Carrot"}]]]
@@ -274,8 +273,7 @@
             [:th {:class "small-2 large-2 columns footer-icon"}
               [:a
                 {:href config/web-url}
-                [:img {:src (str config/email-images-prefix "/email_images/carrot_logo_grey_email.png")
-                       :srcSet (str config/email-images-prefix "/email_images/carrot_logo_grey_email@2x.png 2x")
+                [:img {:src (str config/email-images-prefix "/email_images/carrot_logo_grey_email@2x.png")
                        :width "13"
                        :height "24"
                        :alt "Carrot"}]]]]]


Make job-allocations-counts work with gen-tests

--- src/onyx/test_helper.clj
+++ src/onyx/test_helper.clj
@@ -14,8 +14,7 @@

 (defn job-allocation-counts [replica job-info]
   (if-let [allocations (get-in replica [:allocations (:job-id job-info)])]
-    (mapv (comp count allocations :id)
-          (:task-ids job-info))
+    (mapv count (vals allocations))
     []))

 (defn get-counts [replica job-infos]


Added synth-node? and synth-group? for use in node? Fixes #193

--- src/overtone/sc/node.clj
+++ src/overtone/sc/node.clj
@@ -104,6 +104,9 @@
 (defmethod print-method SynthNode [s-node w]
   (.write w (format "#<synth-node[%s]: %s %d>"
                     (name @(:status s-node)) (:synth s-node) (:id s-node))))
+
+(defn- synth-node? [obj]
+  (= overtone.sc.node.SynthNode (type obj)))

 (defonce active-synth-nodes* (atom {}))

@@ -148,13 +151,14 @@
 ;; The synth server sends an n_go event when a synth node is created and an
 ;; n_end event when a synth node is destroyed.

+(declare synth-group?)
+
 (defn node?
   "Returns true if obj is a synth node i.e. a SynthNode or a
    SynthGroup."
   [obj]
-  (or
-   (= overtone.sc.node.SynthNode (type obj))
-   (= overtone.sc.node.SynthGroup (type obj))))
+  (or (synth-node? obj)
+      (synth-group? obj)))

 (defn live-node?
@@ -231,6 +235,9 @@

 (defmethod print-method SynthGroup [s-group w]
   (.write w (format "#<synth-group[%s]: %s %d>" (name @(:status s-group)) (:group s-group) (:id s-group))))
+
+(defn- synth-group? [obj]
+  (= overtone.sc.node.SynthGroup (type obj)))

 (defn group
   "Create a new synth group as a child of the target group. By default


Added test for granule MENDS ISO granule search test, only ECHO10 format is add, will add other formats later.

--- test/cmr/system_int_test/search/granule_search_format_test.clj
+++ test/cmr/system_int_test/search/granule_search_format_test.clj
@@ -87,6 +87,18 @@
           (search/find-metadata :granule :iso-smap
                                 {:granule-ur "g1"}
                                 {:format-as-ext? true}))))
+
+    (testing "Retrieving results in ISO19115"
+      (d/assert-metadata-results-match
+        :iso19115 [g1-echo g2-echo]
+        (search/find-metadata :granule :iso19115 {:granule-ur ["g1" "g2"]}))
+      (testing "as extension"
+        (are [format-key]
+             (d/assert-metadata-results-match
+               :iso19115 [g1-echo]
+               (search/find-metadata :granule format-key {:granule-ur "g1"} {:format-as-ext? true}))
+             :iso
+             :iso19115)))

     (testing "Retrieving results in a format specified as a comma separated list"
       (are [format-str]


Small readme change after merge.

Small readme change after merge.

--- src/re_demo/welcome.cljs
+++ src/re_demo/welcome.cljs
@@ -9,7 +9,7 @@
   [v-box
    :children [[title :label "Re-Com"]
               [gap :size "15px"]
-              [:p "Re-com is a library of ClojureScript UI components."
+              [:p "Re-com is a library of ClojureScript UI components, built on top of "
                [hyperlink
                 :label  "Reagent"
                 :href   "https://github.com/holmsand/reagent"


Seems route to static resources needs to be defined

--- src/clj/rakethopp_reagent/server.clj
+++ src/clj/rakethopp_reagent/server.clj
@@ -21,6 +21,7 @@
       (basic/wrap-basic-authentication authenticated?)))

 (defroutes app
+  (route/resources "/")
   (ANY "/repl" {:as req}
        (drawbridge req))
   ;; (GET "/" []


[REFACTOR] Remove unused var

[REFACTOR] Remove unused var

Signed-off-by: Pang Yan Han <22594c345857f664c61cd411f607c4d40a9d4af9@gmail.com>

--- src/cljs/cljs_nusmods/timetable.cljs
+++ src/cljs/cljs_nusmods/timetable.cljs
@@ -192,11 +192,6 @@
           #{}
           s))

-(def ^{:doc     "Width in pixels of a half hour timeslot"
-       :private true
-       }
-  half-hour-pixels 35)
-
 (def ^{:doc     "Number of available background colors for lesson divs"
        :private true}
   Nr-Available-Bg-Colors 24)


Refactor vubis upload code

Refactor vubis upload code

--- src/cljs/mdr2/productions/vubis.cljs
+++ src/cljs/mdr2/productions/vubis.cljs
@@ -68,7 +68,7 @@
   ::set-vubis-file
   (fn [db [_ file]] (assoc db :vubis-file file)))

-(defn- vubis-file []
+(defn- file-input []
   (let [get-value (fn [e] (-> e .-target .-files (aget 0)))
         save!     #(rf/dispatch [::set-vubis-file %])
         file      @(rf/subscribe [::vubis-file])]
@@ -84,7 +84,20 @@
         [:span.file-label (tr [:choose-vubis])]]
        [:span.file-name (if file (.-name file) (tr [:no-file]))]]]]))

-(defn production [id]
+(defn- file-upload []
+  (let [klass (when @(rf/subscribe [::notifications/button-loading? :vubis :vubis-file]) "is-loading")
+        admin? @(rf/subscribe [::auth/is-admin?])
+        file @(rf/subscribe [::vubis-file])]
+    [:div.field.is-grouped
+     [file-input]
+     [:p.control
+      [:button.button
+       {:disabled (or (nil? file) (not admin?))
+        :class klass
+        :on-click (fn [e] (rf/dispatch [::vubis-file file]))}
+       [:span.material-icons "upload_file"]]]])  )
+
+(defn- production [id]
   (let [{:keys [title creator source description
                 library_number source_publisher source_date]
          :as production} @(rf/subscribe [::production id])]
@@ -99,7 +112,7 @@
      [:td source_publisher]
      [:td (tf/unparse (tf/formatters :date) source_date)]]))

-(defn productions []
+(defn- productions []
   [:<>
    [:table.table.is-striped
     [:thead
@@ -123,21 +136,10 @@
 (defn page []
   (let [loading? @(rf/subscribe [::notifications/loading? :vubis])
         errors? @(rf/subscribe [::notifications/errors?])
-        admin? @(rf/subscribe [::auth/is-admin?])
-        klass (when @(rf/subscribe [::notifications/button-loading? :vubis :vubis-file]) "is-loading")
-        file @(rf/subscribe [::vubis-file])
-        confirm? @(rf/subscribe [::has-productions?])]
+        confirming? @(rf/subscribe [::has-productions?])]
     [:section.section>div.container>div.content
      (cond
         errors? [notifications/error-notification]
         loading? [notifications/loading-spinner]
-        confirm? [productions]
-        :else
-        [:div.field.is-grouped
-         [vubis-file]
-         [:p.control
-          [:button.button
-           {:disabled (or (nil? file) (not admin?))
-            :class klass
-            :on-click (fn [e] (rf/dispatch [::vubis-file file]))}
-           [:span.material-icons "upload_file"]]]])]))
+        confirming? [productions]
+        :else [file-upload])]))


fix modal for anon users

fix modal for anon users

--- src/cljs/salava/badge/ui/issuer.cljs
+++ src/cljs/salava/badge/ui/issuer.cljs
@@ -21,7 +21,7 @@
     (path-for (str "/obpv1/badge/issuer/" issuer-id))
     {:handler (fn [data]
                 (reset! state data)
-                (init-issuer-connection issuer-id state))
+                (if (session/get :user) (init-issuer-connection issuer-id state)))
      }))

 (defn init-creator-content [state creator-id]


Refresh midi device list on MIDI state changes

--- src/alder/ui/components/inspector_input.cljs
+++ src/alder/ui/components/inspector_input.cljs
@@ -77,20 +77,32 @@
       {})))

 (defn midi-device-input-component [[node input value on-change] owner]
-  (letfn [(devices-loaded [devices]
-            (let [inputs (aget devices "inputs")
-                  entries (.call (aget inputs "entries") inputs)
+  (letfn [(update-inputs [inputs]
+            (let [entries (.call (aget inputs "entries") inputs)
                   entry-map (midi-iterator->map entries)
                   master-device (midiapi/midi-master-device)
                   entry-map (assoc entry-map (aget master-device "id") master-device)]
-              (om/set-state! owner :inputs entry-map)))]
+              (om/set-state! owner :inputs entry-map)))
+
+          (on-state-change [event]
+            (let [access (om/get-state owner :midi-access)]
+              (update-inputs (aget access "inputs"))))]
     (reify
       om/IDisplayName
       (display-name [_] "MidiDeviceInput")

       om/IWillMount
       (will-mount [_]
-        (.then (midiapi/request-midi-access) devices-loaded))
+        (.then (midiapi/request-midi-access)
+               (fn [access]
+                 (om/set-state! owner :midi-access access)
+                 (update-inputs (aget access "inputs"))
+                 (.addEventListener access "statechange" on-state-change))))
+
+      om/IWillUnmount
+      (will-unmount [_]
+        (let [access (om/get-state owner :midi-access)]
+          (.removeEventListener access "statechange" on-state-change)))

       om/IRender
       (render [_]
@@ -101,8 +113,8 @@
                                     (on-change (inputs id))))
            :value (when value (.-id value))}
           [:option {:value nil} "(no input)"]
-          (map (fn [[id input]] [:option {:value id} (.-name input)])
-               (om/get-state owner :inputs))])))))
+          (map (fn [[id input]] [:option {:value id :key id} (.-name input)])
+               (sort (om/get-state owner :inputs)))])))))

 (defn render-midi-device-input [node input value on-change]
   (om/build midi-device-input-component [node input value on-change]))


Wire up "make admin" button, add "ban" button for users admin page

--- src/braid/users/client/views/users_page.cljs
+++ src/braid/users/client/views/users_page.cljs
@@ -1,16 +1,27 @@
 (ns braid.users.client.views.users-page
   (:require
-   [re-frame.core :refer [subscribe]]))
+   [re-frame.core :refer [dispatch subscribe]]))

 (defn user-view
-  [user]
-  (let [nickname (:nickname user)]
+  [{:keys [nickname id] :as user}]
+  (let [group-id (subscribe [:open-group-id])]
     [:tr.user
      [:td.nickname nickname]
-     [:td.action [:button.make-admin
-                  {:on-click
-                   (fn [_])}
-                  "Make Admin"]]]))
+     [:td.action
+      (if @(subscribe [:user-is-group-admin? id] [group-id])
+        [:span.admin "Admin"]
+        [:button.make-admin
+         {:on-click (fn [_]
+                      (dispatch [:make-admin
+                                 {:group-id @group-id
+                                  :user-id id}]))}
+         "Make Admin"])
+      (when (not= id @(subscribe [:user-id]))
+        [:button.ban {:on-click (fn []
+                                  (dispatch [:remove-from-group
+                                             {:group-id @group-id
+                                              :user-id id}]))}
+         "Kick from Group"])]]))

 (defn users-page-view []
   (when @(subscribe [:current-user-is-group-admin?]


this section of code was moved to new PR

--- src/clj/backtype/storm/daemon/supervisor.clj
+++ src/clj/backtype/storm/daemon/supervisor.clj
@@ -117,12 +117,7 @@
 (defn- wait-for-worker-launch [conf id start-time]
   (let [state (worker-state conf id)]
     (loop []
-      (let [hb (try (.get state LS-WORKER-HEARTBEAT)
-                    (catch java.io.FileNotFoundException e
-                      ;; This solves race condition in unit tests if you try to shutdown
-                      ;; a worker which cleans up worker state while you also try to wait
-                      ;; for worker to launch by reading the same state.
-                      nil))]
+      (let [hb (.get state LS-WORKER-HEARTBEAT)]
         (when (and
                (not hb)
                (<


Autoconstruction.

Autoconstruction.

--- src/clojush/problems/classification/penn.clj
+++ src/clojush/problems/classification/penn.clj
@@ -30,7 +30,7 @@
     (println "Total number of data lines:" (count lines))
     (mapv #(mapv read-string %) lines)))

-(def training-proportion 0.1) ;; proportion of training cases to use each generation
+(def training-proportion 0.5) ;; proportion of training cases to use each generation

 (defn define-fitness-cases
   "Returns a map with two keys: train and test. Train maps to a
@@ -145,7 +145,11 @@
    :report-simplifications 0
    :final-report-simplifications 5000
    :age-mediated-parent-selection [0.05 0.5] ;***
-   :age-combining-function :proportionate ;***
+   :age-combining-function :first-reuse ;***
+   :autoconstructive true
+   :autoconstructive-genome-instructions :uniform
+   :autoconstructive-diversification-test :three-gens-size-and-instruction
+   :autoconstructive-si-children 2
+   :autoconstructive-entropy 0.1
    })

-


make spec tests tolerant of additive explain-data

Signed-off-by: Rich Hickey <2f3b32171da334ad5d7d0db393d0928eef4308ab@gmail.com>

--- test/clojure/test_clojure/spec.clj
+++ test/clojure/test_clojure/spec.clj
@@ -14,7 +14,16 @@

 (def even-count? #(even? (count %)))

-#_(deftest conform-explain
+(defn submap?
+  "Is m1 a subset of m2?"
+  [m1 m2]
+  (if (and (map? m1) (map? m2))
+    (every? (fn [[k v]] (and (contains? m2 k)
+                          (submap? v (get m2 k))))
+      m1)
+    (= m1 m2)))
+
+(deftest conform-explain
   (let [a (s/and #(> % 5) #(< % 10))
         o (s/or :s string? :k keyword?)
         c (s/cat :a string? :b keyword?)
@@ -29,8 +38,8 @@
       (let [co (result-or-ex (s/conform spec x))
             e (result-or-ex (::s/problems (s/explain-data spec x)))]
         (when (not= conformed co) (println "conform fail\n\texpect=" conformed "\n\tactual=" co))
-        (when (not= ed e) (println "explain fail\n\texpect=" ed "\n\tactual=" e))
-        (and (= conformed co) (= ed e)))
+        (when (not (submap? ed e)) (println "explain fail\n\texpect=" ed "\n\tactual=" e))
+        (and (= conformed co) (submap? ed e)))

       keyword? :k :k nil
       keyword? nil ::s/invalid {[] {:pred ::s/unknown :val nil :via []}}


use the threadsafe system protocol

use the threadsafe system protocol

--- src/er_cassandra/model/util/test.clj
+++ src/er_cassandra/model/util/test.clj
@@ -4,6 +4,7 @@
    [taoensso.timbre :refer [trace debug info warn error]]
    [deferst :refer [defsystem]]
    [deferst.system :as sys]
+   [deferst]
    [slf4j-timbre.configure :as logconf]
    [manifold.stream :as stream]
    [er-cassandra.record :as r]
@@ -21,7 +22,7 @@
             {:keyspace "er_cassandra_test"
              ;; set to false to preserve db contents after tests
              :truncate-on-close true
-             :trace? :warn
+             ;; :trace? :warn
              ;; :consistency :all
              }}})

@@ -29,11 +30,17 @@
   [[:logging logconf/configure-timbre [:timbre]]
    [:cassandra ams/create-test-session [:config :alia-session]]])

-(defn with-system
+(defn with-system*
   [sys f]
-  (let [system @(sys/system-map sys)]
-    (binding [*model-session* (:cassandra system)]
-      (f))))
+  (try
+    (let [system @(deferst/start! sys)]
+      (binding [*model-session* (:cassandra system)]
+        (f)))
+    (finally
+      (try
+        @(deferst/stop! sys)
+        (catch Exception e
+          (error e "error during test stop-system!"))))))

 (defn with-model-session-fixture
   "a clojure.test fixture which sets up logging and
@@ -42,14 +49,10 @@
   (fn [f]

     (let [sb (sys/system-builder alia-test-model-session-system-def)
-          sys (sys/start-system! sb alia-test-model-session-config)]
-      (try
-        (with-system sys)
-        (finally
-          (try
-            @(sys/stop-system! sys)
-            (catch Exception e
-              (error e "error during test stop-system!"))))))))
+          sys (deferst/create-system
+                sb
+                alia-test-model-session-config)]
+      (with-system* sys f))))

 (defn create-table
   "creates a table for test - drops any existing version of the table first"


Add HTTPS tests

Add HTTPS tests

--- test/icecap/handlers/http_test.clj
+++ test/icecap/handlers/http_test.clj
@@ -15,7 +15,12 @@
          (merge simple-http-step {:method :HEAD})
          (merge simple-http-step {:method :POST})
          (merge simple-http-step {:method :DELETE})
-         (merge simple-http-step {:method :PUT})))
+         (merge simple-http-step {:method :PUT})
+         simple-https-step
+         (merge simple-https-step {:method :HEAD})
+         (merge simple-https-step {:method :POST})
+         (merge simple-https-step {:method :DELETE})
+         (merge simple-https-step {:method :PUT})))
   (testing "invalid steps"
     (are [s expected]  (= (check-plan (merge {:type :http} s))
                           expected)


wip on UI

wip on UI

--- src/tango/cljs/main.cljs
+++ src/tango/cljs/main.cljs
@@ -57,19 +57,21 @@
     (set! (.-onload r) #(on-file-read % r))
     (.readAsText r file)))

-(def app-state
-  (atom
-   {:competition/date #inst "2014-11-22T00:00:00.000-00:00",
-    :competition/name "TurboMegatävling",
-    :dance-perfect/version "4.1",
-    :competition/location "THUNDERDOME",
-    :competition/classes
-    [{:class/name "Hiphop Singel Star B", :class/competitors
-      [{:competitor/name "Rulle Trulle", :competitor/number 1, :competitor/club "Rulles M&M"}
-       {:competitor/name "Katchyk Wrong", :competitor/number 2, :competitor/club "Sccchhh"}]}
-     {:class/name "Hiphop Singel Star J Fl", :class/competitors
-      [{:competitor/name "Ringo Stingo" :competitor/number 20, :competitor/club "Kapangg"}
-       {:competitor/name "Greve Turbo", :competitor/number 21, :competitor/club "OOoost"}]}]}))
+;; (def app-state
+;;   (atom
+;;    {:competition/date #inst "2014-11-22T00:00:00.000-00:00",
+;;     :competition/name "TurboMegatävling",
+;;     :dance-perfect/version "4.1",
+;;     :competition/location "THUNDERDOME",
+;;     :competition/classes
+;;     [{:class/name "Hiphop Singel Star B", :class/competitors
+;;       [{:competitor/name "Rulle Trulle", :competitor/number 1, :competitor/club "Rulles M&M"}
+;;        {:competitor/name "Katchyk Wrong", :competitor/number 2, :competitor/club "Sccchhh"}]}
+;;      {:class/name "Hiphop Singel Star J Fl", :class/competitors
+;;       [{:competitor/name "Ringo Stingo" :competitor/number 20, :competitor/club "Kapangg"}
+;;        {:competitor/name "Greve Turbo", :competitor/number 21, :competitor/club "OOoost"}]}]}))
+
+(def app-state (atom []))

 (defn competitor-component [competitors]
   [:div ""
@@ -114,8 +116,12 @@
    [competition-component]
    ])

+(defn menu-component []
+  [:div
+   [:input.btn.btn-default {:value "Tävlingar"}]])
+
 (defn ^:export run []
-  (reagent/render-component [import-component] (.-body js/document)))
+  (reagent/render-component [menu-component] (.-body js/document)))

 ;; {:competition/date #inst "2014-11-22T00:00:00.000-00:00", :competition/name "TurboMegatävling", :dance-perfect/version "4.1", :competition/location "THUNDERDOME", :competition/classes [{:class/name "Hiphop Singel Star B", :class/competitors [{:competitor/name "Rulle Trulle", :competitor/number 1, :competitor/club "Rulles M&M"} {:competitor/name "Katchyk Wrong", :competitor/number 2, :competitor/club "Sccchhh"}]} {:class/name "Hiphop Singel Star J Fl", :class/competitors [{:competitor/name "Ringo Stingo", :competitor/number 20, :competitor/club "Kapangg"} {:competitor/name "Greve Turbo", :competitor/number 21, :competitor/club "OOoost"}]}]}}


Misc housekeeping

Misc housekeeping

--- src/taoensso/carmine.clj
+++ src/taoensso/carmine.clj
@@ -174,22 +174,13 @@
     - Call `(alter-var-root #'taoensso.carmine/issue-83-workaround? (fn [_] false))`,
     - or set one of the following to \"false\" or \"FALSE\":
       - `taoensso.carmine.issue-83-workaround` JVM property
-      - `TAOENSSO_CARMINE_ISSUE-83-WORKAROUND` env var
+      - `TAOENSSO_CARMINE_ISSUE_83_WORKAROUND` env var

   Ref. https://github.com/ptaoussanis/carmine/issues/83 for more info."

-  (if-let [sv (enc/get-sys-val
-                "taoensso.carmine.issue-83-workaround"
-                "TAOENSSO_CARMINE_ISSUE-83-WORKAROUND")]
-
-    (case sv
-      ("true"  "TRUE")  true
-      ("false" "FALSE") false
-      (throw
-        (ex-info "Unexpected `issue-83-workaround?` value"
-          {:value sv})))
-
-    true))
+  (enc/get-sys-bool true
+    "taoensso.carmine.issue-83-workaround"
+    "TAOENSSO_CARMINE_ISSUE_83_WORKAROUND"))

 (defn thaw-if-possible-nippy-bytes
   "If given agrgument is a byte-array starting with apparent NPY header,


Throw wrapped exception on connection errors

--- src/taoensso/carmine.clj
+++ src/taoensso/carmine.clj
@@ -55,7 +55,7 @@
          spec# (or ~connection-spec (make-conn-spec))
          conn# (try (conns/get-conn pool# spec#)
                     (catch Exception e#
-                      (throw (Exception. "Carmine connection error"))))]
+                      (throw (Exception. "Carmine connection error" e#))))]
      (try
        (let [response# (protocol/with-context conn# ~@body)]
          (conns/release-conn pool# conn#) response#)


Housekeeping

Housekeeping

--- src/taoensso/faraday.clj
+++ src/taoensso/faraday.clj
@@ -8,7 +8,7 @@
             [taoensso.faraday.utils :as utils])
   (:import  [com.amazonaws.services.dynamodbv2.model
              AttributeValue
-             AttributeValueUpdate ;;+
+             AttributeValueUpdate
              AttributeDefinition
              BatchGetItemRequest
              BatchGetItemResult
@@ -21,9 +21,9 @@
              DescribeTableResult
              DeleteTableRequest
              DeleteItemRequest
-             DeleteItemResult ;;+
+             DeleteItemResult
              DeleteRequest
-             ExpectedAttributeValue ;;++
+             ExpectedAttributeValue
              GetItemRequest
              GetItemResult
              KeySchemaElement
@@ -33,15 +33,15 @@
              ProvisionedThroughput
              ProvisionedThroughputDescription
              PutItemRequest
-             PutItemResult ;;+
+             PutItemResult
              PutRequest
              QueryRequest
-             QueryResult ;;++
+             QueryResult
              ResourceNotFoundException
              ScanRequest
              ScanResult
-             UpdateItemRequest ;;+
-             UpdateTableRequest ;;+
+             UpdateItemRequest
+             UpdateTableRequest
              WriteRequest]
             com.amazonaws.ClientConfiguration
             com.amazonaws.auth.BasicAWSCredentials
@@ -95,32 +95,33 @@
     (.setReadCapacityUnits  (long read-units))
     (.setWriteCapacityUnits (long write-units))))

-(defn- attribute-definition "Returns a new AttributeDefinition objects."
-  [{key-name :name key-type :type :as def}]
-  (doto (AttributeDefinition.)
-    (.setAttributeName key-name)
-    (.setAttributeType (utils/ucname key-type))))
-
-(defn- attribute-definitions "Returns a vector of AttributeDefinition objects."
-  [defs] (mapv attribute-definition defs))
-
-(defn- create-projection "Returns a new Projection object."
+(defn- attribute-definitions "Returns a vector of new AttributeDefinition objects."
+  [defs]
+  (mapv
+   (fn [{key-name :name key-type :type :as def}]
+     (doto (AttributeDefinition.)
+       (.setAttributeName key-name)
+       (.setAttributeType (utils/ucname key-type))))
+   defs))
+
+(defn- projection "Returns a new Projection object."
   [projection & [included-attrs]]
   (let [pr (Projection.)]
     (.setProjectionType pr (utils/ucname projection))
     (when included-attrs (.setNonKeyAttributes pr included-attrs))
     pr))

-(defn- local-index "Returns a new LocalSecondaryIndex object."
-  [hash-key {:keys [name range-key projection included-attrs]
-             :or   {projection :all}}]
-  (doto (LocalSecondaryIndex.)
-    (.setIndexName  name)
-    (.setKeySchema  (key-schema hash-key range-key))
-    (.setProjection (create-projection projection included-attrs))))
-
-(defn- local-indexes "Returns a vector of LocalSecondaryIndexes objects."
-  [hash-key indexes] (mapv (partial local-index hash-key) indexes))
+(defn- local-indexes "Returns a vector of new LocalSecondaryIndexes objects."
+  [hash-key indexes]
+  (mapv
+   (fn [{:keys [name range-key projection included-attrs]
+        :or   {projection :all}
+        :as   index}]
+     (doto (LocalSecondaryIndex.)
+       (.setIndexName  name)
+       (.setKeySchema  (key-schema hash-key range-key))
+       (.setProjection (projection projection included-attrs))))
+   indexes))

 ;;;; Coercion - values

@@ -579,4 +580,4 @@
     (as-map
      (.query
       (db-client creds)
-      (query-request table hash-key range options)))))+      (query-request table hash-key range options)))))


added basic HTML escaping to 'plain' mode.

--- src/leiningen/midje_doc/renderer.clj
+++ src/leiningen/midje_doc/renderer.clj
@@ -6,6 +6,10 @@
 (programs pygmentize)

 (def ^:dynamic *plain* true)
+
+(defn basic-html-escape
+  [data]
+  (clojure.string/escape data { \< "<" \> ">" \& "&" \" """ }))

 (defn adjust-facts-code [s spaces]
   (let [i-arrow (.lastIndexOf s "=>")]
@@ -56,7 +60,7 @@
     :ns
     [:div
      (if *plain*
-       [:pre (:content elem)]
+       [:pre (-> elem :content basic-html-escape)]
        (pygmentize  "-f" "html" "-l" (or (:lang elem) "clojure")
                     {:in (:content elem)}))]
     :code
@@ -66,8 +70,9 @@
        [:h4 [:i (str "e." (:num elem)
                      (if-let [t (:title elem)] (str "   -  " t)))]])
      (if *plain*
-       [:pre (adjust-indented-code (:content elem)
-                                   (apply str (repeat (or (:fact-level elem) 0) "  ")))]
+       [:pre (-> (:content elem)
+                 (basic-html-escape)
+                 (adjust-indented-code (apply str (repeat (or (:fact-level elem) 0) "  "))))]
        (pygmentize  "-f" "html" "-l" (or (:lang elem) "clojure")
                    {:in (adjust-indented-code (:content elem)
                                               (apply str (repeat (or (:fact-level elem) 0) "  ")))}))]))


Function to play constructed measures

Function to play constructed measures

--- src/tenor/constructs.clj
+++ src/tenor/constructs.clj
@@ -60,6 +60,10 @@

 (defmacro construct-measure [measure-maps base-time player]
   `(map #(construct-note (+ (now) (* (:pos %) ~base-time))
-                         '~player (:note %))
+                         ~player (:note %))
         ~measure-maps))

+(defn play-measure [measure-maps base-time player]
+  `(let [time# (now)]
+     ~@(construct-measure measure-maps base-time player)))
+


Ignore anchors with '_self' not 'self'

Ignore anchors with '_self' not 'self'

--- modules/reitit-frontend/src/reitit/frontend/history.cljs
+++ modules/reitit-frontend/src/reitit/frontend/history.cljs
@@ -92,7 +92,7 @@
                            (not (.-ctrlKey e))
                            (not (.-metaKey e))
                            (not (.-shiftKey e))
-                           (not (contains? #{"_blank" "self"} (.getAttribute el "target")))
+                           (not (contains? #{"_blank" "_self"} (.getAttribute el "target")))
                            ;; Left button
                            (= 0 (.-button e))
                            ;; isContentEditable property is inherited from parents,


Add single-argument grayscale rgb constructor.

--- src/org/playasophy/wonderdome/util/color.clj
+++ src/org/playasophy/wonderdome/util/color.clj
@@ -17,8 +17,10 @@
 (defn rgb
   "Creates a color value from red, green, and blue component channels. Each
   component should be a number from [0.0, 1.0]."
-  [r g b]
-  (.getRGB (Color. (float r) (float g) (float b))))
+  ([v]
+   (rgb v v v))
+  ([r g b]
+   (.getRGB (Color. (float r) (float g) (float b)))))

 (defn rgb-components


Update documentation generator

Update documentation generator

--- src/main/clojure/conexp/util/doc.clj
+++ src/main/clojure/conexp/util/doc.clj
@@ -89,6 +89,8 @@
   [file]
   (public-api-to-file
    file '[conexp.main
+          conexp.util.exec
+          conexp.util.doc
           conexp.layouts
           conexp.layouts.base
           conexp.layouts.common
@@ -96,12 +98,7 @@
           conexp.layouts.freese
           conexp.layouts.layered
           conexp.layouts.util
-          conexp.contrib.doc
-          conexp.contrib.fuzzy.fca
-          conexp.contrib.fuzzy.logics
-          conexp.contrib.fuzzy.sets
           conexp.contrib.draw
-          conexp.contrib.exec
           conexp.contrib.factor-analysis
           conexp.contrib.gui
           conexp.contrib.profiler


permutations.clj: split protocols; added a generic results method.

--- clojure/org/gavrog/clojure/permutations.clj
+++ clojure/org/gavrog/clojure/permutations.clj
@@ -1,13 +1,19 @@
 (ns org.gavrog.clojure.permutations)

-(defprotocol ResumableGenerator
+(defprotocol SubstepGenerator
   (result [_])
-  (step [_])
+  (step [_]))
+
+(defn results [gen]
+  (letfn [(s [gen] (when gen (lazy-seq (cons gen (s (step gen))))))]
+    (filter (comp not nil?) (map result (s gen)))))
+
+(defprotocol Resumable
   (checkpoint [_])
   (resume [_ checkpoint]))

 (deftype BacktrackingGenerator [gen-children extract desc stack]
-  ResumableGenerator
+  SubstepGenerator
   (result [_] (extract (:node (first stack))))
   (step [_]
         (let [stack
@@ -25,8 +31,6 @@
                            :siblings-left (rest siblings-left)}))))]
           (when (seq stack)
             (BacktrackingGenerator. gen-children extract desc stack))))
-  clojure.lang.Seqable
-  (seq [bg] (lazy-seq (cons bg (step bg))))
   Object
   (toString [_] (str desc)))


Ack impl.

Ack impl.

--- src/onyx/messaging/acking_daemon.clj
+++ src/onyx/messaging/acking_daemon.clj
@@ -16,3 +16,23 @@
 (defn acking-daemon [config]
   (map->AckingDaemon {}))

+(defn ack-message [daemon]
+  (swap!
+   (:ack-state daemon)
+   (fn [state]
+     (if-not (get-in state [message-id])
+       (assoc state message-id [completion-id ack-val])
+       (let [current-val (second (get-in state [message-id]))]
+         (assoc state message-id [completion-id (bit-xor current-val ack-val)]))))))
+
+(defn gen-ack-value
+  "Generate a 64-bit value to bit-xor against the current ack-value."
+  []
+  (.nextLong (java.security.SecureRandom.)))
+
+(defn prefuse-vals
+  "Prefuse values on a peer before sending them to the acking
+   daemon to decrease packet size."
+  [& vals]
+  (apply bit-xor vals))
+


Update+fix Nippy unit test

Update+fix Nippy unit test

--- test/taoensso/faraday/tests/main.clj
+++ test/taoensso/faraday/tests/main.clj
@@ -61,7 +61,8 @@
  ;; is reference-based and not structural. `expect` falls back to Java equality,
  ;; and so will fail when presented with different Java objects that don't themselves
  ;; implement #equals() - such as arrays and Exceptions - despite having identical data.
- [data (dissoc nippy/stress-data :throwable :ex-info :exception)]
+ [data ;; nippy/stress-data-comparable ; Awaiting Nippy v2.6
+  (dissoc nippy/stress-data :bytes :throwable :exception :ex-info)]
  {:id 10 :nippy-data data}
  (do (far/put-item creds ttable {:id 10 :nippy-data (far/freeze data)})
      (far/get-item creds ttable {:id 10})))


refactor profiles

refactor profiles

--- profiles.clj
+++ profiles.clj
@@ -1,22 +1,14 @@
-{:dev     {:global-vars         {*warn-on-reflection* true}
+{:dev     {:global-vars    {*warn-on-reflection* true}

-           :source-paths        #{"src"}
-           :resource-paths      ["resources"]
+           :source-paths   #{"src"}
+           :resource-paths ["resources"]

-           :target-path         "target/%s"
-           :clean-targets       ^{:protect false} [:target-path]
+           :target-path    "target/%s"
+           :clean-targets  ^{:protect false} [:target-path]

-           :plugins             [[lein-ancient "0.6.15"]
-                                 [org.apache.maven.wagon/wagon-ssh-external "3.0.0"]
-                                 [org.apache.maven.wagon/wagon-http-lightweight "3.0.0"]]
+           :plugins        [[org.apache.maven.wagon/wagon-ssh-external "3.4.2"]
+                            [org.apache.maven.wagon/wagon-http-lightweight "3.4.2"]]}

-           :dependencies        [[org.clojure/clojure "1.10.0"]]}
+ :provided {:dependencies [[org.clojure/clojure "1.10.1"]]}

- :uberjar {:aot      :all
-           :jvm-opts #=(eval
-                         (concat ["-Xmx1G"]
-                           (let [version (System/getProperty "java.version")
-                                 [major _ _] (clojure.string/split version #"\.")]
-                             (if (>= (Integer. major) 9)
-                               ["--add-modules" "java.xml.bind"]
-                               []))))}}
+ :jar     {:aot :all}}


Set callback-uri back.

Set callback-uri back.

--- src/word_keeper/auth.clj
+++ src/word_keeper/auth.clj
@@ -12,7 +12,7 @@
                                    "https://api.twitter.com/oauth/authorize"
                                    :hmac-sha1))

-(defn request-token [] (oauth/request-token consumer "http://127.0.0.1:8080/signin"))
+(defn request-token [] (oauth/request-token consumer "http://word-keeper.clojurecup.com/signin"))

 (defn authorize [token verifier]
   (oauth/access-token consumer token verifier))


removed unused fake data

removed unused fake data

--- src/cljs/conference_rating/conference_detail_page/conference_detail_page.cljs
+++ src/cljs/conference_rating/conference_detail_page/conference_detail_page.cljs
@@ -28,36 +28,6 @@
     :comment     {:name    "Florian Sellmayr"
                   :comment "This conference was mehh and awesome at the same time!"}}])

-(def aggregated-ratings
-  {:aggregated-ratings {:number-of-ratings 16
-                        :recommendations 1445
-                        :overall {:avg 4 :count 8}
-                        :talks {:avg 0.1 :count 7}
-                        :venue {:avg 3 :count 6}
-                        :community {:avg 2.5 :count 5}
-                        :roles {
-                                :dev 1
-                                :devops 2
-                                :ux 3
-                                :qa 4
-                                :ba 5
-                                :pm 6
-                                :sales 7
-                                :recruting 8
-                                :other 9}
-                        :experience {
-                                     :rookie 1
-                                     :beginner 3
-                                     :intermediate 12
-                                     :advanced 5
-                                     :expert 0}
-                        :tags {
-                               :inspiring 2
-                               :entertaining 2
-                               :learning 2
-                               :potential-hires 1
-                               :potential-clients 1}}})
-
 (defn add-rating-button [conference-id]
   [:div {:class "text-lg-right voice-btn-container"}
    [:a {:class "btn btn-md btn-orange" :href (str "#/conferences/" conference-id "/add-rating")} "give it your voice"]])


IX_REPL


app starts in 'want to play' mode, not 'paused'

--- src-cljs/core.cljs
+++ src-cljs/core.cljs
@@ -33,7 +33,7 @@
      :player-queue []
      :tab-on-view [:search]
      :player {:track-number 0
-              :playing false
+              :playing true
               :track-offset 0
               :track-offset-when 0
               :source nil


Отладка и исправление

Отладка и исправление

--- radiolamp-6P3/src/r6p3/core.clj
+++ radiolamp-6P3/src/r6p3/core.clj
@@ -380,7 +380,10 @@
                      (fts-simpl-query-prep fts-query opts))]
      (kc/raw (str " "
                   (if (coll? fts-field-ds)
-                    (str "(" (->> fts-field-ds (map name) (clojure.string/join " || ")) ")")
+                    (str "concat_ws(' ', " ;; Нужно делать через функцию concat_ws потому что если попадает null то все будет null
+                         ;; при конкатенации через ||
+                         (->> fts-field-ds (map name)
+                              (clojure.string/join ",")) ")")
                     (name fts-field-ds))
                   " @@ to_tsquery('" fts-query "')")))))


Changed HTML module to use vectors

Changed HTML module to use vectors

--- modules/html/html.clj
+++ modules/html/html.clj
@@ -17,12 +17,14 @@
       (str* " " k "=\"" (escape-html v) "\""))
     attrs))

+(def xml)
+
 (defn- make-tag
   "Create an XML tag given a name, attribute map, and seq of contents."
   [name attrs contents]
   (if contents
     (str* "<" name (make-attrs attrs) ">"
-          (apply str contents)
+          (str-map xml contents)
           "</" name ">")
     (str* "<" name (make-attrs attrs) " />")))

@@ -31,9 +33,8 @@
   [tree]
   (if (vector? tree)
     (if-let tag (first tree)
-      (apply make-tag (str* tag)
-        (if (map? (second tree))
-          [(second tree) (xml (rrest tree))]
-          [{} (xml (rest tree))]))
+      (if (map? (second tree))
+        (make-tag (str* tag) (second tree) (rrest tree))
+        (make-tag (str* tag) {} (rest tree)))
       "")
     (str tree)))


use default js-env in example

use default js-env in example

--- example/project.clj
+++ example/project.clj
@@ -17,7 +17,8 @@

   :doo {:build "test"
         :paths {:slimer "./node_modules/.bin/slimerjs"}
-        :alias {:browsers [:chrome :firefox]
+        :alias {:default [:slimer]
+                :browsers [:chrome :firefox]
                 :all [:browsers :headless]}}

   :jvm-opts ["-Xmx1g"]


add documentation strings to examples

add documentation strings to examples

--- examples/fowler.clj
+++ examples/fowler.clj
@@ -1,13 +1,17 @@
 (deftask code-gen []
-  (println "do the code generation"))
+  "This task generates code. It has no dependencies."
+  (println "generating code..."))

 (deftask compile [] code-gen
-  (println "do the compilation"))
+  "This task does the compilation. It depends on code-gen."
+  (println "compiling..."))

 (deftask data-load [] code-gen
-  (println "load the test data"))
+  "This task loads the test data. It depends on code-gen."
+  (println "loading test data..."))

 (deftask test [] compile data-load
-  (println "run the tests"))
+  "This task runs the tests. It depends on compile and data-load."
+  (println "running tests..."))

 (dotask test)


Adds insertR*

Adds insertR*

--- src/the_little_clojurian/chapter5.clj
+++ src/the_little_clojurian/chapter5.clj
@@ -22,3 +22,21 @@
   (is (= (rember* 'cup '((cup))) '(())))
   (is (= (rember* 'cup '(coffee (cup) and (another) cup)) '(coffee () and (another))))
   (is (= (rember* 'sauce '(((tomato sauce)) ((bean) sauce) (and ((flying)) sauce))) '(((tomato)) ((bean)) (and ((flying)))))))
+
+(with-test
+  (def insertR*
+    (fn [new old l]
+      (cond (null? l) '()
+            (atom? (car l)) (cond (eq? (car l) old) (cons old
+                                                          (cons new (insertR* new old
+                                                                              (cdr l))))
+                                  :else (cons (car l)
+                                              (insertR* new old
+                                                        (cdr l))))
+            :else (cons (insertR* new old (car l))
+                        (insertR* new old (cdr l))))))
+
+  (is (= (insertR* 'new 'old '()) '()))
+  (is (= (insertR* 'new 'old '(old)) '(old new)))
+  (is (= (insertR* 'new 'old '((old))) '((old new))))
+  (is (= (insertR* 'new 'old '((these) old ((shoes old) perfume))) '((these) old new ((shoes old new) perfume)))))


Fix github operations binding on form.

Fix github operations binding on form.

--- src/cljs/hatnik/web/client/form/github_pull_request.cljs
+++ src/cljs/hatnik/web/client/form/github_pull_request.cljs
@@ -76,6 +76,7 @@
   (reify
     om/IRender
     (render [this]
+      (.log js/console data)
       (dom/div nil
                (dom/div #js {:className "form-group"}
                         (dom/div #js {:className "row"}
@@ -155,4 +156,4 @@
                                         :className "form-control"}))

                (dom/div nil
-                        (om/build pull-request-operations-list (:operations data)))))))
+                        (om/build pull-request-operations-list (-> data :operations :value)))))))


Implement the `with-collect-logging` macro using a `with-collect-logging*` function.

--- test/com/nomistech/clojure_the_language/reducers_rumford_test.clj
+++ test/com/nomistech/clojure_the_language/reducers_rumford_test.clj
@@ -401,16 +401,36 @@
 ;;;; ---------------------------------------------------------------------------
 ;;;; nomis stuff

+(defn with-collect-logging* [fun-of-log-fun]
+  (let [log-entries (agent [])]
+    (letfn [(log [entry]
+              (send log-entries conj entry))]
+      (fun-of-log-fun log))
+    (await log-entries)
+    @log-entries))
+
+(defmacro with-collect-logging [{:keys [log-name]} & body]
+  `(with-collect-logging*
+     (fn [~log-name]
+       ~@body)))
+
+(fact
+  (with-collect-logging*
+    (fn [log]
+      (log :a)
+      (log :b)
+      (log :c)))
+  => [:a :b :c])
+
+(fact
+  (with-collect-logging {:log-name log}
+    (log :a)
+    (log :b)
+    (log :c))
+  => [:a :b :c])
+
 ;;;; ---------------------------------------------------------------------------
 ;;;; Demo of ordering
-
-(defmacro with-collect-logging [{:keys [log-name]} & body]
-  `(let [~'log-entries (agent [])
-         ~log-name (fn [~'entry]
-                     (send ~'log-entries conj ~'entry))]
-     ~@body
-     (await ~'log-entries)
-     @~'log-entries))

 (fact
   (with-collect-logging {:log-name log}


More idiomatic clojure :-)

More idiomatic clojure :-)


added a function to group by multiple ecoregions


Revert "Fix inaccurate default-template-properties."

This reverts commit 33a3c0e7166268f4ff0137fe26d8c6c8c1d9fe75.

--- frontend/models/plan.cljs
+++ frontend/models/plan.cljs
@@ -5,9 +5,11 @@
             [cljs-time.format :as time-format]))

 ;; The template tells how to price the plan
-;; TODO: fix this to work from the backend db; how?
-(def default-template-properties {:price 0 :container_cost 50 :id
-                                  "p18" :max_containers 1000 :free_containers 0})
+;; TODO: fix this to work from the backend db; how? Failing that, must
+;; update this code when we change the definition of p18
+(def default-template-properties {:price 19 :container_cost 50 :id
+                                  "p18" :max_containers 1000 :free_containers 1})
+;(def default-template-properties {:price 0 :container_cost 50 :id "p18" :max_containers 1000 :free_containers 0})

 (defn max-parallelism
   "Maximum parallelism that the plan allows (usually 16x)"


Renaming

Renaming

--- src/structural_typing/mechanics/m_lifting_predicates.clj
+++ src/structural_typing/mechanics/m_lifting_predicates.clj
@@ -25,35 +25,47 @@

-(defn precache [f k v]
+(defn ensure-meta [f k v]
   (if (contains? (meta f) k)
     f
     (vary-meta f assoc k v)))

-(defn best-predicate-choice [f]
-  (get (meta f) ::original-predicate f))
+(defn ensure-availability-of-predicate-string [f name]
+  (ensure-meta f ::predicate-string name))
+(defn- ensure-availability-of-original-predicate [f]
+  (ensure-meta f ::original-predicate f))
+
+(defn- choose-best [f k default]
+  (get (meta f) k default))
+(defn choose-best-predicate [f]
+  (choose-best f ::original-predicate f))
+(defn choose-best-predicate-string [f]
+  (choose-best f ::predicate-string (friendly-name f)))
+(defn choose-best-explainer [f]
+  (get (meta f) ::error-explainer defaults/default-error-explainer))
+
+
+(defn replace-predicate-string [f name]
+  (vary-meta f assoc ::predicate-string name))
+
+
+

 (defn show-as [name f]
   (-> f
-      (precache ::original-predicate f)
-      (vary-meta assoc ::predicate-string name)))
-
-(defn best-predicate-string-choice [f]
-  (get (meta f) ::predicate-string (friendly-name f)))
+      ensure-availability-of-original-predicate
+      (replace-predicate-string name)))

 (defn explain-with [explainer f]
   (-> f
-      (precache ::original-predicate f)
-      (precache ::predicate-string (friendly-name f))
+      ensure-availability-of-original-predicate
+      (ensure-availability-of-predicate-string (friendly-name f))
       (vary-meta assoc ::error-explainer explainer)))

-(defn best-explainer-choice [f]
-  (get (meta f) ::error-explainer defaults/default-error-explainer))
-
 (defn lift [pred]
-  (let [diagnostics {:error-explainer (best-explainer-choice pred)
-                     :predicate-string (best-predicate-string-choice pred)
-                     :predicate (best-predicate-choice pred)}]
+  (let [diagnostics {:error-explainer (choose-best-explainer pred)
+                     :predicate-string (choose-best-predicate-string pred)
+                     :predicate (choose-best-predicate pred)}]
     (fn [leaf-value-context]
       (e/make-either (merge diagnostics leaf-value-context)
                      (fn [x] (try (pred x) (catch Exception ex false)))


New tests: update-configuration, load-configuration, and print-configuration

--- test/emender_service/config_test.clj
+++ test/emender_service/config_test.clj
@@ -35,3 +35,13 @@
     (testing "if the emender-service.config/update-configuration definition exists."
         (is (callable? 'emender-service.config/update-configuration))))

+(deftest test-load-configuration-existence
+    "Check that the emender-service.config/load-configuration definition exists."
+    (testing "if the emender-service.config/load-configuration definition exists."
+        (is (callable? 'emender-service.config/load-configuration))))
+
+(deftest test-print-configuration-existence
+    "Check that the emender-service.config/print-configuration definition exists."
+    (testing "if the emender-service.config/print-configuration definition exists."
+        (is (callable? 'emender-service.config/print-configuration))))
+


CMR-2866 Fixes an intermittent test failure with re-find

--- system-int-test/test/cmr/system_int_test/search/collection_temporal_search_test.clj
+++ system-int-test/test/cmr/system_int_test/search/collection_temporal_search_test.clj
@@ -292,7 +292,7 @@
     (let [{:keys [status errors]} (search/find-refs :collection {"temporal[]" "2010-01-01T00:00:00Z,2011-01-10T00:00:00Z"
                                                                  "temporal[][temporal_start]" "2010-01-01T10:00:00Z/P10D2H"})]
       (is (= 400 status))
-      (is (re-find #"Parameter [temporal] may be either single valued or multivalued, but not both." (first errors))))))
+      (is (re-find #"Parameter \[temporal\] may be either single valued or multivalued, but not both\." (first errors))))))

 (deftest search-temporal-json-error-scenarios
   (testing "search by invalid temporal date format"


Fix #457, fix reflection warning in reitit.ring

--- modules/reitit-ring/src/reitit/ring.cljc
+++ modules/reitit-ring/src/reitit/ring.cljc
@@ -221,7 +221,7 @@
            handler (if path
                      (fn [request]
                        (let [uri (:uri request)]
-                         (if (.startsWith uri path)
+                         (if (str/starts-with? uri path)
                            (path-or-index-response (subs uri path-size) uri))))
                      (fn [request]
                        (let [uri (:uri request)


move to rc1

move to rc1

--- project.clj
+++ project.clj
@@ -39,7 +39,7 @@
        (vec (set (concat (get JVMOPTS :any)
                          (get JVMOPTS os))))))

-(defproject overtone "0.8.0-SNAPSHOT"
+(defproject overtone "0.8.0-RC1"
   :description "Collaborative Programmable Music. (http://overtone.github.com)"
   :url "http://overtone.github.com/"
   :dependencies [[org.clojure/clojure "1.3.0"]


back to clojure 1.8

back to clojure 1.8

--- project.clj
+++ project.clj
@@ -11,7 +11,7 @@
   :url "http://homepages.thm.de/~hg11260/ebc.html"
   :license {:name "Eclipse Public License"
             :url "http://www.eclipse.org/legal/epl-v10.html"}
-  :dependencies [[org.clojure/clojure "1.9.0-alpha12"]
+  :dependencies [[org.clojure/clojure "1.8.0"]
                  [org.clojure/tools.cli "0.3.5"]
                  [seesaw "1.4.5"]
                  [ceterumnet-zclucy "0.9.4"]


PLD: generic project

PLD: generic project

--- project.clj
+++ project.clj
@@ -3,7 +3,7 @@
   [path]
   (str "resources/public/js/lib/" path))

-(defproject onaio/hatti "0.3.13-photos-SNAPSHOT"
+(defproject onaio/hatti "0.3.13-SNAPSHOT"
   :description "A cljs dataview from your friends at Ona.io"
   :license "Apache 2, see LICENSE"
   :url "https://github.com/onaio/hatti"


Version 0.4.2.

Version 0.4.2.

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject appengine-magic "0.4.2-SNAPSHOT"
+(defproject appengine-magic "0.4.2"
   :description "Google App Engine library for Clojure."
   :min-lein-version "1.5.0"
   :repositories {"releases" "http://appengine-magic-mvn.googlecode.com/svn/releases/"


Next dev cycle

Next dev cycle

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject de.active-group/active-clojure "0.38.0"
+(defproject de.active-group/active-clojure "0.39.0-SNAPSHOT"
   :description "Active Clojure: Various Clojure utilities in use at Active Group"
   :url "http://github.com/active-group/active-clojure"
   :license {:name "Eclipse Public License"


ARD-10456 bump cheshire to 5.10.1.

ARD-10456 bump cheshire to 5.10.1.

--- project.clj
+++ project.clj
@@ -21,7 +21,7 @@
                  [ring/ring-core "1.6.3"]
                  [http-kit "2.3.0"]
                  [de.ubercode.clostache/clostache "1.4.0"]
-                 [cheshire "5.8.0"]
+                 [cheshire "5.10.1"]
                  [clojurewerkz/urly "1.0.0"]
                  [hiccup "1.0.5"]
                  [superstring "2.1.0"]


Updated version for next release cycle

Updated version for next release cycle

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject lein-pallet-release "0.1.21"
+(defproject lein-pallet-release "0.1.22-SNAPSHOT"
   :description "A leiningen plugin for the PalletOps release workflow"
   :url "http://github.com/palletops/lein-pallet-release"
   :license {:name "Eclipse Public License"


Rolled version number to v0.6.0

Rolled version number to v0.6.0

--- project.clj
+++ project.clj
@@ -12,7 +12,7 @@

 (def alfresco-version "4.2.f")

-(defproject lein-amp "0.6.0-SNAPSHOT"
+(defproject lein-amp "0.6.0"
   :description       "Leiningen plugin for generating Alfresco Module Package (AMP) files."
   :url               "https://github.com/lambdalf/lein-amp"
   :license           {:name "Eclipse Public License"


Version 78-SNAPSHOT

Version 78-SNAPSHOT

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject clojars-web "77"
+(defproject clojars-web "78-SNAPSHOT"
   :min-lein-version "2.0.0"
   :dependencies [[org.clojure/clojure "1.8.0"]
                  [org.clojure/tools.cli "0.2.1"]


upgraded lib

upgraded lib

--- project.clj
+++ project.clj
@@ -14,7 +14,7 @@

   :dependencies [[org.clojure/clojure "1.6.0"]
                  [org.zalando/swagger1st "0.15.0"]
-                 [org.zalando.stups/txdemarcator "0.4.0"]
+                 [org.zalando.stups/txdemarcator "0.5.0"]
                  [com.stuartsierra/component "0.2.3"]
                  [ring "1.3.2"]
                  [org.eclipse.jetty/jetty-servlet "7.6.13.v20130916"]


Bump version

Bump version

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject defragment "0.1.9"
+(defproject defragment "0.1.10"
   :description "Ogg file defragmenter"
   :url "https://github.com/kenrestivo/defragment"
   :license {:name "Eclipse Public License"


fix path error in test config

fix path error in test config

--- project.clj
+++ project.clj
@@ -47,7 +47,7 @@
               :source-paths ["src" "test"]
               :compiler {:output-to "resources/public/js/compiled/parinfer-test.js"
                          :output-dir "resources/public/js/compiled/out-test"
-                         :foreign-libs [{:file "src/parinfer/cm-clojure-parinfer.js"
+                         :foreign-libs [{:file "src/parinfer/js/cm-clojure-parinfer.js"
                                          :provides ["cljsjs.codemirror.mode.clojure-parinfer"]}]
                          :main parinfer.runner
                          :optimizations :none


Update path to source in docs

Update path to source in docs

--- project.clj
+++ project.clj
@@ -81,7 +81,7 @@
   :codox {:language    :clojurescript
           :metadata    {:doc/format :markdown}
           :source-paths ["src/discuss"]
-          :source-uri  "https://gitlab.cs.uni-duesseldorf.de/project/discuss/blob/master/{filepath}#L{line}"
+          :source-uri  "https://gitlab.cs.uni-duesseldorf.de/cn-tsn/project/discuss/blob/master/{filepath}#L{line}"
           :doc-paths   ["docs"]
           :output-path "target/docs"}
   )


Switching to JavaParser2

Switching to JavaParser2

--- project.clj
+++ project.clj
@@ -1,7 +1,7 @@
 (defproject effectivejava "0.1.2-SNAPSHOT"
   :description "A Java linter and a tool for running queries on your Java codebase"
   :dependencies [[org.clojure/clojure "1.6.0"]
-                 [com.google.code.javaparser/javaparser "1.0.12-SNAPSHOT"]
+                 [com.github.javaparser/javaparser-core "2.0.0"]
                  [org.clojure/tools.cli "0.3.1"]
                  [instaparse "1.3.3"]]
   :resource-paths ["test-resources"]


release 0.1.1

release 0.1.1

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject yieldbot/flambo-parquet "0.1.1-SNAPSHOT"
+(defproject yieldbot/flambo-parquet "0.1.1"
   :description "Functions for reading and writing parquet file with flambo."
   :url "https://github.com/yieldbot/flambo-parquet"
   :license {:name "Eclipse Public License"


0.2.1 -> 0.2.1-SNAPSHOT

0.2.1 -> 0.2.1-SNAPSHOT

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject shale "0.2.1"
+(defproject shale "0.2.1-SNAPSHOT"
   :description "A Clojure-backed Selenium hub replacement"
   :url "https://github.com/cardforcoin/shale"
   :dependencies [[org.clojure/clojure "1.6.0"]


Version 0.4.1

Version 0.4.1

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject pandect "0.4.1-SNAPSHOT"
+(defproject pandect "0.4.1"
   :description "Message Digest and Checksum Library for Clojure"
   :url "https://github.com/xsc/pandect"
   :license {:name "Eclipse Public License"


Update cats version to 0.5.0

Update cats version to 0.5.0

--- project.clj
+++ project.clj
@@ -4,7 +4,7 @@
   :license {:name "BSD (2 Clause)"
             :url "http://opensource.org/licenses/BSD-2-Clause"}

-  :dependencies [[cats "0.5.0-SNAPSHOT"]]
+  :dependencies [[funcool/cats "0.5.0"]]
   :deploy-repositories {"releases" :clojars
                         "snapshots" :clojars}


bootstrapped project.clj to create jars with lein uberjar. It looks like the issue was with the project name, it was missing the appendix SNAPSHOT :|

--- project.clj
+++ project.clj
@@ -1,6 +1,4 @@
-(defproject penjat "0.1.0"
-
-  :source-paths ["src/clj" "src/cljs"]
+(defproject penjat "0.1.0-SNAPSHOT"

   :dependencies [[org.clojure/clojure       "1.7.0"]
                  [org.clojure/clojurescript "1.7.170"]
@@ -13,65 +11,10 @@
                  [prismatic/schema "1.0.3"]
                  [environ "1.0.0"]]

-  :plugins [[lein-cljsbuild "1.1.1"]
-            [lein-figwheel "0.5.0-2"]
-            [lein-ring "0.9.1"]
-            [lein-asset-minifier "0.2.2"]]
+  :main ^:skip-aot penjat.server

-  :ring {:handler penjat.handler/app
-         :uberwar-name "penjar.war"}
+  ;;:clean-targets ^{:protect false} ["resources/public/js" "target"]

-  :min-lein-version "2.5.0"
+  :profiles {:uberjar {:aot :all}}

-  :uberjar-name "penjat.jar"
-
-  :main penjat.server
-
-  :hooks [leiningen.cljsbuild]
-
-  :minify-assets
-  {:assets
-    {"resources/public/css/site.min.css" "resources/public/css/site.css"}}
-
-
-  :profiles {:dev {:cljsbuild
-                   {:builds {:client {:source-paths ["devsrc"]
-                                      :compiler     {:main penjat.dev
-                                                     :asset-path "js"
-                                                     :optimizations :none
-                                                     :source-map true
-                                                     :source-map-timestamp true}}}}}
-
-             :prod {:cljsbuild
-                    {:builds {:client {:compiler    {:main penjat.core
-                                                     :asset-path "js"
-                                                     :optimizations :advanced
-                                                     :elide-asserts true
-                                                     :pretty-print false}}}}}
-
-             :uberjar {:hooks [leiningen.cljsbuild minify-assets.plugin/hooks]
-                       :env {:production true}
-                       :aot :all
-                       :omit-source true
-                       :cljsbuild {:jar true
-                                   :builds {:app
-                                             {:source-paths ["env/prod/cljs"]
-                                              :compiler
-                                              {:optimizations :advanced
-                                               :pretty-print false}}}}}
-
-}
-
-  :figwheel {:server-port 3450
-             :repl        true}
-
-  :clean-targets ^{:protect false} ["resources/public/js" "target"]
-
-  :cljsbuild {:builds {:client {:source-paths ["src/cljs"]
-                                :compiler     {:output-dir "resources/public/js"
-                                               :output-to  "resources/public/js/client.js"
-                                               :asset-path "js"}}}}
-
-  :aliases {"package"
-            ["with-profile" "prod" "do"
-             "clean" ["cljsbuild" "once"]]})
+  :source-paths ["src/clj"])


lein-release plugin: preparing 0.114 release

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject maestro "0.114-SNAPSHOT"
+(defproject maestro "0.114"
   :description "Maestro service"
   :license  "https://github.com/mixradio/mr-maestro/blob/master/LICENSE"


Version 0.0.4

Version 0.0.4

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject pe-fp-rest "0.0.4-SNAPSHOT"
+(defproject pe-fp-rest "0.0.4"
   :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"


Bump version number to 0.1.1

Bump version number to 0.1.1

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject io.nervous/fink-nottle "0.1.0"
+(defproject io.nervous/fink-nottle "0.1.1"
   :description "Asynchronous Clojure client for the Amazon SNS service"
   :url "https://github.com/nervous-systems/fink-nottle"
   :license {:name "Unlicense" :url "http://unlicense.org/UNLICENSE"}


Remove the exclusion of jada-time

Remove the exclusion of jada-time

--- project.clj
+++ project.clj
@@ -6,7 +6,7 @@
   :dependencies [[org.clojure/clojure "1.5.1"]
                  [org.clojure/tools.cli "0.3.1"]
                  [cheshire "5.3.1"]
-                 [clj-aws-s3 "0.3.10" :exclusions [joda-time]]
+                 [clj-aws-s3 "0.3.10"]
                  [clout "2.1.0"]
                  [compojure "1.3.2"]
                  [com.novemberain/pantomime "2.3.0"]


Upgrade karma to 4.1.0

Upgrade karma to 4.1.0

--- project.clj
+++ project.clj
@@ -40,7 +40,7 @@
                   ["vcs" "commit"]
                   ["vcs" "push"]]

-  :npm {:devDependencies [[karma                 "4.0.0"]
+  :npm {:devDependencies [[karma                 "4.1.0"]
                           [karma-cljs-test       "0.1.0"]
                           [karma-chrome-launcher "2.2.0"]
                           [karma-junit-reporter  "1.2.0"]]}


Updated dependencies.

Updated dependencies.

--- project.clj
+++ project.clj
@@ -20,15 +20,15 @@
                   [org.clojure/tools.cli                "0.2.4"]
                   [org.clojure/tools.trace              "0.7.6"]
                   [org.clojure/tools.logging            "0.2.6"]
-                  [clojurewerkz/neocons                 "1.1.0"]
+                  [clojurewerkz/neocons                 "2.0.0"]
                   [ch.qos.logback/logback-classic       "1.0.13"]
                   [org.ow2.asm/asm                      "4.2"]
-                  [net.java.truevfs/truevfs-kernel-impl "0.10.4"]  ; Ugh TrueVFS' dependencies are crap
-                  [net.java.truevfs/truevfs-access      "0.10.4"]
-                  [net.java.truevfs/truevfs-driver-file "0.10.4"]
-                  [net.java.truevfs/truevfs-driver-zip  "0.10.4"]
-                  [net.java.truevfs/truevfs-driver-jar  "0.10.4"]
-                  [lacij                                "0.8.1" :exclusions [org.clojure/clojure]]
+                  [net.java.truevfs/truevfs-kernel-impl "0.10.5"]  ; Ugh TrueVFS' dependencies are crap
+                  [net.java.truevfs/truevfs-access      "0.10.5"]
+                  [net.java.truevfs/truevfs-driver-file "0.10.5"]
+                  [net.java.truevfs/truevfs-driver-zip  "0.10.5"]
+                  [net.java.truevfs/truevfs-driver-jar  "0.10.5"]
+                  [lacij                                "0.8.2" :exclusions [org.clojure/clojure]]
                 ]
   :profiles {:dev {:dependencies [
                                    [midje "1.5.1"]


Upgrading libraries.

Upgrading libraries.

--- project.clj
+++ project.clj
@@ -1,7 +1,7 @@
 (defproject nasa-cmr/cmr-elastic-utils-lib "0.1.0-SNAPSHOT"
   :description "A library containing utilities for dealing with Elasticsearch."
   :url "http://example.com/FIXME"
-  :dependencies [[org.clojure/clojure "1.5.1"]
+  :dependencies [[org.clojure/clojure "1.6.0"]
                  [nasa-cmr/cmr-common-lib "0.1.1-SNAPSHOT"]
                  [org.elasticsearch/elasticsearch "1.0.1" :exclusions [commons-codec]]
                  [clojurewerkz/elastisch "2.0.0-beta2"]


Version 5.3.7

Version 5.3.7

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(def ps-version "5.3.7-SNAPSHOT")
+(def ps-version "5.3.7")
 (def jruby-1_7-version "1.7.27-1")
 (def jruby-9k-version "9.1.16.0-1")


added objenesis.

added objenesis.

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject com.esotericsoftware.kryo/kryo "2.02"
+(defproject com.twitter/kryo "2.04"
   :description "Fast, efficient Java serialization"
   :java-source-path "src"
   :jvm-opts ["-Xmx768m" "-server"]
@@ -7,6 +7,7 @@
   :javac-source-path [["src"] ["test"]]
   :repositories {"conjars" "http://conjars.org/repo/"}
   :dependencies [[com.esotericsoftware.reflectasm/reflectasm "1.02"]
+                 [org.objenesis/objenesis "1.2"]
                  [com.googlecode/minlog "1.2"]]
   :dev-dependencies [[junit "4.8.2"]
                      [lein-javac "1.3.0"]


lein-release plugin: bumped version from 0.2.3 to 0.2.4-SNAPSHOT for next development cycle

--- project.clj
+++ project.clj
@@ -4,7 +4,7 @@
     [http-kit "2.1.18"]
     [hiccup "1.0.5"]])

-(defproject racehub/om-bootstrap "0.2.3"
+(defproject racehub/om-bootstrap "0.2.4-SNAPSHOT"
   :description "Bootstrap meets Om."
   :url "http://github.com/racehub/om-bootstrap"
   :license {:name "MIT Licens"


Cleaner project file

Cleaner project file

--- project.clj
+++ project.clj
@@ -5,19 +5,13 @@
             :url "http://www.eclipse.org/legal/epl-v10.html"}

   :dependencies [[org.clojure/clojure "1.8.0"]
-                 [ring-server "0.4.0"]
                  [reagent "0.6.0"]
-                 [reagent-forms "0.5.12"]
                  [reagent-utils "0.1.5"]
-                 [ring "1.4.0"]
                  [re-frame "0.8.0"]
-                 [ring/ring-defaults "0.1.5"]
-                 [prone "0.8.2"]
-                 [compojure "1.4.0"]
                  [hiccup "1.0.5"]
                  [org.clojure/core.async "0.2.391"]
                  [environ "1.0.1"]
-                 [org.clojure/clojurescript "1.9.229" :scope "provided"]
+                 [org.clojure/clojurescript "1.9.229"]
                  [secretary "1.2.3"]
                  ]

@@ -67,24 +61,16 @@

                    :dependencies [
                                   [binaryage/devtools "0.8.2"]
-                                  [ring/ring-mock "0.3.0"]
-                                  [ring/ring-devel "1.4.0"]
-                                  [lein-figwheel "0.4.1"]
                                   [org.clojure/tools.nrepl "0.2.11"]
                                   [com.cemerick/piggieback "0.2.1"]
                                   [pjstadig/humane-test-output "0.7.0"]
-                                  [cider/cider-nrepl "0.13.0"]]
+                                  ]

                    :source-paths ["env/dev/clj"]
                    :plugins [[lein-figwheel "0.5.7"]
-                             [lein-cljsbuild "1.1.4"]
                              [lein-doo "0.1.7"]
-                             [com.cemerick/clojurescript.test "0.3.3"]]
-
-                   :injections [
-                                ; (require 'pjstadig.humane-test-output)
-                                ; (pjstadig.humane-test-output/activate!)
-                                ]
+                             [cider/cider-nrepl "0.13.0"]
+                             ]

                    :figwheel {:http-server-root "public"
                               :server-port 3449
@@ -100,7 +86,7 @@
                                               :compiler {:main "russyll.dev"
                                                          :source-map true}}

-                                       :test {:source-paths ["src/cljs/russyll"]
+                                       :test {:source-paths ["test/cljs/russyll" "src/cljs/russyll"]
                                               :compiler {:output-to "target/test.js"
                                                          :output-dir "target/out"
                                                          :main russyll.runner


version

version

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject org.clojars.mhuebert/re-view "0.1.2"
+(defproject org.clojars.mhuebert/re-view "0.1.3"
   :description "Tiny React wrapper"
   :url "http://example.com/FIXME"
   :license {:name "Eclipse Public License"


(maint) update clj-parent to 4.9.7

(maint) update clj-parent to 4.9.7

update jackson-databind to address CVE-2020-36518
update pgjdbc to address CVE-2022-26520

--- project.clj
+++ project.clj
@@ -1,6 +1,6 @@
 (def pdb-version "6.20.3-SNAPSHOT")

-(def clj-parent-version "4.9.6")
+(def clj-parent-version "4.9.7")

 (defn true-in-env? [x]
   (#{"true" "yes" "1"} (System/getenv x)))


bumps up version

bumps up version

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(def VERSION "1.0.1")
+(def VERSION "1.0.2-SNAPSHOT")

 (defproject refactor-nrepl VERSION
   :description "nREPL middleware to support editor-agnostic refactoring"


Version 1.6.2-SNAPSHOT

Version 1.6.2-SNAPSHOT

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject puppetlabs/lein-ezbake "1.6.1"
+(defproject puppetlabs/lein-ezbake "1.6.2-SNAPSHOT"
   :description "A system for building packages for trapperkeeper-based applications"
   :url "https://github.com/puppetlabs/ezbake"
   :license {:name "Apache License 2.0"


pump version

pump version

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject minhtuannguyen/remote-test-refresh "0.2.0"
+(defproject minhtuannguyen/remote-test-refresh "0.2.1-SNAPSHOT"
   :description "Automatically synchronize with remote project over ssh  when files change"
   :url "https://github.com/minhtuannguyen/remote-test-refresh"
   :license {:name "Eclipse Public License" :url "http://www.eclipse.org/legal/epl-v10.html"}


lein-release plugin: preparing 0.39 release

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject shuppet "0.39-SNAPSHOT"
+(defproject shuppet "0.39"
   :description "Shuppet service"
   :url "http://wikis.in.nokia.com/NokiaMusicArchitecture/Shuppet"


lein-release plugin: bumped version from 1.1.1 to 1.1.2-SNAPSHOT for next development cycle

--- project.clj
+++ project.clj
@@ -1,7 +1,7 @@
 (def tk-version "1.0.1")
 (def ks-version "1.0.0")

-(defproject puppetlabs/trapperkeeper-webserver-jetty9 "1.1.1"
+(defproject puppetlabs/trapperkeeper-webserver-jetty9 "1.1.2-SNAPSHOT"
   :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"


Version 1.1.1

Version 1.1.1

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject puppetlabs/kitchensink "1.1.1-SNAPSHOT"
+(defproject puppetlabs/kitchensink "1.1.1"
   :description "Clojure utility functions"
   :license {:name "Apache License, Version 2.0"
             :url "http://www.apache.org/licenses/LICENSE-2.0.html"}


adding zmq to project.clj

adding zmq to project.clj

--- project.clj
+++ project.clj
@@ -7,14 +7,18 @@
                  [org.clojure/data.json "0.2.5"]
                  [com.cemerick/url "0.1.1"]
                  [clj-time "0.7.0"]
+
+                 [org.zeromq/cljzmq "0.1.4"]
                  [http-kit "2.1.16"]]
-                 ;; [org.clojure/core.match "0.2.1"]
                  ;; [org.clojure/tools.cli "0.3.1"]]
-                 ;; [org.zeromq/cljzmq "0.1.5-SNAPSHOT"]]
-                 ;; [com.keminglabs/zmq-async "0.1.0"]]

   :main fowles.fetch.core
   :aot [fowles.fetch.core]

+  ;; https://github.com/zeromq/jzmq/issues/29
+  ;; https://github.com/technomancy/leiningen/blob/master/sample.project.clj#L280
+  ;; ZeroMQ
+  :jvm-opts ["-Djava.library.path=/usr/local/lib"]
+
   :profiles {:dev {:dependencies [[midje "1.6.0"]]}})


Version 1.1.5

Version 1.1.5

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject puppetlabs/lein-ezbake "1.1.5-SNAPSHOT"
+(defproject puppetlabs/lein-ezbake "1.1.5"
   :description "A system for building packages for trapperkeeper-based applications"
   :url "https://github.com/puppetlabs/ezbake"
   :license {:name "Apache License 2.0"


Latest lib.

Latest lib.

--- project.clj
+++ project.clj
@@ -24,7 +24,7 @@
     [org.clojure/tools.namespace "0.3.0-alpha4" :exclusions [org.clojure/tools.reader]]

     ;; Library for OC projects https://github.com/open-company/open-company-lib
-    [open-company/lib "0.16.30alpha"]
+    [open-company/lib "0.16.30alpha1"]
     ;; In addition to common functions, brings in the following common dependencies used by this project:
     ;; Component - Component Lifecycle https://github.com/stuartsierra/component
     ;; Schema - Data validation https://github.com/Prismatic/schema


Fix dependency conflict with cloverage tool.

--- project.clj
+++ project.clj
@@ -23,6 +23,7 @@

   :dependencies
   [[org.clojure/clojure "1.8.0"]
+   [org.clojure/tools.logging "0.4.0"]
    [clojure-future-spec "1.9.0-alpha14"]
    [bigml/sketchy "0.4.1"]
    [mvxcvi/merkledag-core "0.2.0"]
@@ -60,7 +61,8 @@
   {:dev
    {:dependencies
     [[org.clojure/test.check "0.9.0"]
-     [com.gfredericks/test.chuck "0.2.7"]]}
+     [com.gfredericks/test.chuck "0.2.7"]
+     [riddley "0.1.14"]]}

    :repl
    {:source-paths ["dev"]


Create a snapshot release

Create a snapshot release

Signed-off-by: Njagi Mwaniki <b6a4ba60ad861b9c9afb6daea7294be4be68f44c@urbanslug.com>

--- project.clj
+++ project.clj
@@ -3,7 +3,7 @@
   [path]
   (str "resources/public/js/lib/" path))

-(defproject onaio/hatti "0.3.18-SNAPSHOT"
+(defproject onaio/hatti "0.3.18-change-photo-tab-download-link-on-scroll-SNAPSHOT"
   :description "A cljs dataview from your friends at Ona.io"
   :license "Apache 2, see LICENSE"
   :url "https://github.com/onaio/hatti"


Updated Clojurescript and Figwheel

Updated Clojurescript and Figwheel

Had to use an older version of core sync though as 0.2.374 did not work

--- project.clj
+++ project.clj
@@ -1,10 +1,10 @@
 (defproject org.clojars.zubairq/coils "0.7.5-beta"
   :dependencies [
-                 [org.clojure/clojure "1.7.0"]
-                 [org.clojure/clojurescript "1.7.122" :scope "provided"]
-                 [org.omcljs/om "0.9.0"]
-                 [org.clojure/core.async "0.2.374" :scope "provided"]
-                 [cljsjs/react "0.14.0-1"]
+                 [org.clojure/clojure "1.7.0" :scope "provided"]
+                 [org.clojure/clojurescript "1.7.170" :scope "provided"]
+                 [org.omcljs/om "1.0.0-alpha22"]
+                 [org.clojure/core.async "0.2.371" :scope "provided"]
+                 [cljsjs/react "0.14.0-0"]

                  [korma "0.4.2"]

@@ -35,7 +35,7 @@
              [lein-cljsbuild "1.1.1"]
              [lein-httpd "1.0.0"]
              [lein-ring "0.9.7"]
-             [lein-figwheel "0.4.1"]
+             [lein-figwheel "0.5.0-1"]
              ]

   :profiles {


Simplify doc configuration in project file.

--- project.clj
+++ project.clj
@@ -16,12 +16,6 @@
    [org.clojure/data.codec "0.1.0"]
    [prismatic/schema "0.3.0"]]

-  :codox
-  {:defaults {:doc/format :markdown}
-   :output-dir "target/doc/codox"
-   :src-dir-uri "https://github.com/greglook/vault/blob/develop/"
-   :src-linenum-anchor-prefix "L"}
-
   :hiera
   {:path "target/doc/ns-hiera.png"
    :vertical? false
@@ -35,32 +29,22 @@

    :dev
    {:source-paths ["dev/src"]
+
     :plugins
     [[codox "0.8.10"]
      [lein-marginalia "0.8.0"]]
     :dependencies
     [[org.clojure/tools.namespace "0.2.7"]]
+
+    :codox
+    {:defaults {:doc/format :markdown}
+     :exclude #{user}
+     :output-dir "target/doc/codox"
+     :src-dir-uri "https://github.com/greglook/vault/blob/develop/"
+     :src-linenum-anchor-prefix "L"}
+
     :aliases
-    {"docs" ["do" ["doc"]
-                  ["marg"
-                   "--dir" "target/doc"
-                   "--file" "marginalia.html"
-                   "src/vault/blob/content.clj"
-                   "src/vault/blob/store.clj"
-                   "src/vault/blob/store/memory.clj"
-                   "src/vault/blob/store/file.clj"
-                   "src/vault/data/struct.clj"
-                   "src/vault/data/key.clj"
-                   "src/vault/data/edn.clj"
-                   "src/vault/data/signature.clj"
-                   "src/vault/entity/datom.clj"
-                   "src/vault/entity/schema.clj"
-                   "src/vault/entity/tx.clj"
-                   "src/vault/search/index.clj"
-                   "src/vault/search/index/brute.clj"
-                   "src/vault/search/index/memory.clj"
-                   "src/vault/search/catalog.clj"
-                   "src/vault/search/query.clj"]]}}
+    {"docs" ["do" "hiera" "doc" ["marg" "--multi" "--dir" "target/doc/marginalia"]]}}

    :tool
    {:source-paths ["tool"]


Upgrade to 0.10.0-beta9.

Upgrade to 0.10.0-beta9.

--- project.clj
+++ project.clj
@@ -1,9 +1,9 @@
-(defproject workshop "0.10.0-beta8"
+(defproject workshop "0.10.0-beta9"
   :license {:name "Eclipse Public License"
             :url "http://www.eclipse.org/legal/epl-v10.html"}
   :dependencies [[org.clojure/clojure "1.8.0"]
                  ^{:voom {:repo "git@github.com:onyx-platform/onyx.git" :branch "master"}}
-                 [org.onyxplatform/onyx "0.10.0-beta8"]
+                 [org.onyxplatform/onyx "0.10.0-beta9"]
                  [org.slf4j/slf4j-api "1.7.12"]
                  [org.slf4j/slf4j-nop "1.7.12"]]
   :profiles {:dev {:dependencies [[org.clojure/tools.namespace "0.2.10"]


Updated dependencies

Updated dependencies

--- project.clj
+++ project.clj
@@ -20,7 +20,7 @@
                   [org.clojure/clojure                          "1.6.0"]
                   [org.clojure/data.json                        "0.2.4"]
                   [org.clojure/tools.cli                        "0.3.1"]
-                  [org.clojure/tools.logging                    "0.2.6"]
+                  [org.clojure/tools.logging                    "0.3.0"]
                   [clojurewerkz/neocons                         "3.0.0"]
                   [ch.qos.logback/logback-classic               "1.1.2"]
                   [io.aviso/pretty                              "0.1.12"]


bump version number;

bump version number;

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject re-frame/lein-template "0.3.3"
+(defproject re-frame/lein-template "0.3.4"
   :description "Leiningen template for a Reagent web app that implements the re-frame pattern."
   :url "https://github.com/Day8/re-frame-template"
   :license {:name "MIT"}


Move lein-midje into dev plugins

Move lein-midje into dev plugins

--- project.clj
+++ project.clj
@@ -10,8 +10,8 @@
   :dependencies [[org.clojure/clojure "1.5.1"] ]

   :profiles { :dev { :repositories { "BaseX Maven Repository" "http://files.basex.org/maven" }
+                     :plugins [[lein-midje "3.0.0"]]
                      :dependencies [[org.basex/basex "7.8.2"]
                                     [midje "1.5.1"]
-                                    [lein-midje "3.0.0"]
                                     [me.raynes/fs "1.4.4"]]}})


1.7.0 release.

1.7.0 release.

--- project.clj
+++ project.clj
@@ -14,7 +14,7 @@
 ;;
 ;; Please see the LICENSE file for a copy of the GNU Affero General Public License.

-(defproject plugboard "1.7.0-SNAPSHOT"
+(defproject plugboard "1.7.0"
   :description "A library to promote correct HTTP semantics for Clojure web applications built on Compojure"
   :url "http://github.com/malcolmsparks/plugboard"
   :dependencies [[org.clojure/clojure "1.2.0"]


Release version 0.8.1.0-alpha8.

Release version 0.8.1.0-alpha8.

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject org.onyxplatform/onyx-metrics "0.8.1.0-alpha7"
+(defproject org.onyxplatform/onyx-metrics "0.8.1.0-alpha8"
   :description "Instrument Onyx workflows"
   :url "https://github.com/MichaelDrogalis/onyx"
   :license {:name "Eclipse Public License"
@@ -19,7 +19,7 @@
                  *assert* false
                  *unchecked-math* :warn-on-boxed}
   :profiles {:dev {:dependencies [^{:voom {:repo "git@github.com:onyx-platform/onyx.git" :branch "master"}}
-                                  [org.onyxplatform/onyx "0.8.1-alpha7"]
+                                  [org.onyxplatform/onyx "0.8.1-alpha8"]
                                   [riemann-clojure-client "0.4.1"]]
                    :plugins [[lein-set-version "0.4.1"]
                              [lein-update-dependency "0.1.2"]


Update dependency

Update dependency

--- project.clj
+++ project.clj
@@ -4,6 +4,6 @@
   :license {:name "Eclipse Public License"
             :url "http://www.eclipse.org/legal/epl-v10.html"}
   :dependencies [[org.clojure/clojure "1.6.0"]
-                 [macroz/archi "0.1.0"]
+                 [macroz/archi "0.1.1"]
                  ]
   :main archi-example.example)


Removed lein support

Removed lein support

--- project.clj
+++ project.clj
@@ -1,49 +0,0 @@
-(defproject reagent-tictactoe "0.1.0-SNAPSHOT"
-  :dependencies [[org.skummet/clojure "1.7.0"]
-                 [org.clojure/clojurescript "1.7.145"]
-                 [com.rpl/specter "0.8.0"]
-                 [reagent "0.5.1"]
-                 [prismatic/schema "1.0.3"]
-                 [re-frame "0.4.1" ]]
-
-  :plugins [[lein-cljsbuild "1.1.0"]
-            [lein-figwheel "0.4.1" :exclusions [cider/cider-nrepl]]  ]
-  :exclusions [cljsjs/react]
-  :source-paths ["src"]
-
-  :clean-targets ^{:protect false} ["build" "build_test" "test/js"]
-
-  :cljsbuild {:builds [{:id "dev"
-                        :source-paths ["src"]
-
-                        :figwheel {:on-jsload "tictactoe-android.core/on-js-reload"
-                                   :websocket-host "192.168.1.85"
-                                   :websocket-url "ws://192.168.1.85:3449/figwheel-ws"
-                                   :heads-up-display false
-                                   :debug false}
-
-                        :compiler {:main tictactoe-android.core
-                                   :asset-path "build/out"
-                                   :output-to "build/reagent_tictactoe.js"
-                                   :output-dir "build/out"
-                                   :source-map-timestamp true}}
-                       {:id "unittest"
-                        :source-paths ["src" "test" "react-support"]
-                        :notify-command ["phantomjs" "unittest/unit-test.js" "unittest/unit-test.html"]
-                        :compiler {:main test-runner
-                                   :optimizations :none
-                                   :asset-path "js"
-                                   :pretty-print true
-                                   :output-to "unittest/js/tests.js"
-                                   :output-dir "unittest/js"
-                                   :warnings {:single-segment-namespace false}}}
-
-                       {:id "test"
-                        :source-paths ["src"]
-                        :compiler {:main tictactoe-android.core
-                                   :asset-path "build_test/out"
-                                   :output-to "build_test/reagent_tictactoe.js"
-                                   :output-dir "build_test/out"
-                                   :output-wrapper nil
-                                   :recompile-dependents false
-                                   :optimizations :simple}}]})


Prepare for next release cycle.

Prepare for next release cycle.

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject org.onyxplatform/onyx-kafka "0.8.11.0"
+(defproject org.onyxplatform/onyx-kafka "0.8.11.1-SNAPSHOT"
   :description "Onyx plugin for Kafka"
   :url "https://github.com/onyx-platform/onyx-kafka"
   :license {:name "Eclipse Public License"


remove the friend clojar

remove the friend clojar

--- project.clj
+++ project.clj
@@ -15,7 +15,6 @@
                  [cheshire "5.5.0"]
                  [buddy/buddy-core "0.7.0"]
                  [buddy/buddy-auth "0.7.0"]
-                 [com.cemerick/friend "0.2.1"]
                  [hiccup "1.0.5"]]
   :plugins [[lein-environ "1.0.0"]
             [lein-ring "0.8.11"]


(SERVER-1914) Update project.clj for bouncycastle fips

This creates a fips profile that can be added to existing invocations to
load only the FIPS version of Bouncy Castle, eg:
`lein with-profile +fips irb`

It also removes the general dependency on bouncycastle and replaces it
with dependencies in dev and uberjar profiles so that we continue
to use it by default in development and ship packages containing it, but
no longer will ship it in our jars that we re-use in PE.

--- project.clj
+++ project.clj
@@ -62,7 +62,6 @@
                  [puppetlabs/trapperkeeper-scheduler]
                  [puppetlabs/trapperkeeper-status]
                  [puppetlabs/kitchensink]
-                 [org.bouncycastle/bcpkix-jdk15on]
                  [puppetlabs/ssl-utils]
                  [puppetlabs/ring-middleware]
                  [puppetlabs/dujour-version-check]
@@ -117,6 +116,7 @@
                                    [puppetlabs/trapperkeeper-metrics :classifier "test" :scope "test"]
                                    [puppetlabs/kitchensink nil :classifier "test" :scope "test"]
                                    [ring-basic-authentication]
+                                   [org.bouncycastle/bcpkix-jdk15on]
                                    [ring/ring-mock]
                                    [grimradical/clj-semver "0.3.0" :exclusions [org.clojure/clojure]]
                                    [beckon]
@@ -140,11 +140,14 @@
                                                ;; clojure version here, because without it, lein
                                                ;; brings in its own version.
                                                [org.clojure/clojure]
+                                               [org.bouncycastle/bcpkix-jdk15on]
                                                [puppetlabs/puppetserver ~ps-version]
                                                [puppetlabs/trapperkeeper-webserver-jetty9]]
                       :plugins [[puppetlabs/lein-ezbake "2.0.4"]]
                       :name "puppetserver"}
-             :uberjar {:aot [puppetlabs.trapperkeeper.main
+             :uberjar {:dependencies [[org.bouncycastle/bcpkix-jdk15on]
+                                      [puppetlabs/trapperkeeper-webserver-jetty9]]
+                       :aot [puppetlabs.trapperkeeper.main
                              puppetlabs.trapperkeeper.services.status.status-service
                              puppetlabs.trapperkeeper.services.metrics.metrics-service
                              puppetlabs.services.protocols.jruby-puppet
@@ -195,8 +198,10 @@
                              puppetlabs.puppetserver.cli.irb
                              puppetlabs.puppetserver.cli.gem
                              puppetlabs.services.analytics.analytics-service
-                             puppetlabs.services.protocols.legacy-routes]
-                       :dependencies [[puppetlabs/trapperkeeper-webserver-jetty9]]}
+                             puppetlabs.services.protocols.legacy-routes]}
+             :fips {:exclusions [org.bouncycastle/bcpkix-jdk15on]
+                    :dependencies [[org.bouncycastle/bcpkix-fips]
+                                   [org.bouncycastle/bc-fips]]}
              :ci {:plugins [[lein-pprint "1.1.1"]
                             [lein-exec "0.3.7"]]}}


Set clojure version to the las stable: 1.6.0

--- project.clj
+++ project.clj
@@ -3,7 +3,7 @@
   :url "http://example.com/FIXME"
   :license {:name "Apache 2.0"
             :url "http://www.apache.org/licenses/LICENSE-2.0.txt"}
-  :dependencies [[org.clojure/clojure "1.7.0-alpha2"]
+  :dependencies [[org.clojure/clojure "1.6.0"]
                  [org.jooq/jooq "3.4.2"]
                  [clojure.jdbc "0.3.0-SNAPSHOT"]
                  [postgresql "9.3-1101.jdbc41"]


lein-release plugin: preparing 1.0.0 release

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject foosball "1.0.0-SNAPSHOT"
+(defproject foosball "1.0.0"
   :dependencies [[org.clojure/clojure "1.5.1"]
                  [org.clojure/clojurescript "0.0-1844"]
                  [com.datomic/datomic-free "0.8.3941" :exclusions [com.amazonaws/aws-java-sdk]]


Bump Nippy dependency (0.10.1)

Bump Nippy dependency (0.10.1)

--- project.clj
+++ project.clj
@@ -8,7 +8,7 @@
                  [org.xerial.snappy/snappy-java "1.0.4.1"]
                  [org.clojure/data.json         "0.1.2"]
                  [com.taoensso/timbre           "0.8.0"]
-                 [com.taoensso/nippy            "0.10.0"]]
+                 [com.taoensso/nippy            "0.10.1"]]
   :profiles {:1.3   {:dependencies [[org.clojure/clojure "1.3.0"]]}
              :1.4   {:dependencies [[org.clojure/clojure "1.4.0"]]}
              :1.5   {:dependencies [[org.clojure/clojure "1.5.0-alpha3"]]}


Version 3.15.0-1-SNAPSHOT [ci skip]

Version 3.15.0-1-SNAPSHOT [ci skip]

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject clojush "3.15.0"
+(defproject clojush "3.15.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"


Add nippy dep

Add nippy dep

--- project.clj
+++ project.clj
@@ -16,6 +16,10 @@

                  ;; Crypto
                  [crypto-random "1.2.0"]
+
+                 ;; Serialization
+                 [com.taoensso/nippy "2.7.0-RC1" :exclusions [org.clojure/clojure]]
+
                  ;; REST API
                  ;; http-kit already required as part of handlers
                  [compojure "1.1.8"]


Clean up deps.

Clean up deps.

* add core.async
* add exclusion so korma doesn't cause an old org.clojure/java.jdbc to show up when user.clj is loaded

--- project.clj
+++ project.clj
@@ -19,15 +19,14 @@
                  [prismatic/dommy "0.1.1"]
                  [tinsel "0.4.0"]

-                 [org.clojure/tools.namespace "0.2.4"]
                  [hiccup "1.0.4"]
-                 ;[org.clojure/java.jdbc "0.3.0-beta1"]
                  [honeysql "0.4.2"]
-                 [korma "0.3.0-RC5"]
-                 [postgresql/postgresql "8.4-702.jdbc4"]
-                 [org.clojure/core.async "0.1.242.0-44b1e3-alpha"]]
+                 [korma "0.3.0-RC5" :exclusions [org.clojure/java.jdbc]]
+                 [org.clojure/core.async "0.1.242.0-44b1e3-alpha"]
+                 ]
+  :pedantic? :warn ; :abort
   :plugins [[lein-cljsbuild "0.3.2"]
-            [lein-ring "0.8.7"]]
+            [lein-ring "0.8.8"]]
   :hooks [leiningen.cljsbuild]
   :source-paths ["src/clj"]
   :cljsbuild {


update to 0.1.12-SNAPSHOT

update to 0.1.12-SNAPSHOT

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject graphql-clj "0.1.11"
+(defproject graphql-clj "0.1.12-SNAPSHOT"
   :description "A Clojure library designed to provide GraphQL implementation."
   :url "https://github.com/tendant/graphql-clj"
   :license {:name "Eclipse Public License"


more flexible all

more flexible all

--- server/src/gratefulplace/db/query.clj
+++ server/src/gratefulplace/db/query.clj
@@ -40,7 +40,8 @@

 (defn all
   [common-attribute & conditions]
-  (let [conditions (concat [['?c common-attribute]]
+  (let [common (flatten ['?c common-attribute])
+        conditions (concat [common]
                            (map #(concat ['?c] %) conditions))]
     (map #(ent (first %)) (q {:find ['?c]
                               :where conditions}))))