remove the guard checking reg method

remove the guard checking reg method

there is no reason to guard by registration method in this function. the
registration authority is still relevant no matter what the registration method
is

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/voter-registration-works.git/'


Correct comment

Correct comment

--- examples/todomvc/src/todomvc/subs.cljs
+++ examples/todomvc/src/todomvc/subs.cljs
@@ -1,5 +1,5 @@
 (ns todomvc.subs
-  (:require-macros [reagent.ratom :refer [reaction]])   ;; remove for v0.2.0-alpha2
+  (:require-macros [reagent.ratom :refer [reaction]])
   (:require [re-frame.core :refer [register-sub]]))


Adapt test server to jetty semantics

Adapt test server to jetty semantics

http/start seems to block w/ jetty (unlike Immutant's implementation)

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/turbovote-http-api.git/'


Unify property access for clojurescript compatibility.

--- src/cljx/cats/types.cljx
+++ src/cljx/cats/types.cljx
@@ -62,16 +62,16 @@

 (defn left?
   [mv]
-  (= (.type mv) :left))
+  (= (.-type mv) :left))

 (defn right?
   [mv]
-  (= (.type mv) :right))
+  (= (.-type mv) :right))

 (defn from-either
   "Return inner value of either monad."
   [mv]
-  (.v mv))
+  (.-v mv))

 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;; Maybe
@@ -219,8 +219,8 @@
   Object
   (equals [this other]
     (if (instance? Pair other)
-      (and (= (.fst this) (.fst other))
-           (= (.snd this) (.snd other)))
+      (and (= (.-fst this) (.-fst other))
+           (= (.-snd this) (.-snd other)))
       false))

   (toString [this]
@@ -249,8 +249,8 @@
   (bind [self f]
     (-> (fn [s]
           (let [p        (mfn s)
-                value    (.fst p)
-                newstate (.snd p)]
+                value    (.-fst p)
+                newstate (.-snd p)]
             ((f value) newstate)))
         (state-t)))


Improve documentation around resource hashes

--- src/com/puppetlabs/cmdb/scf/storage.clj
+++ src/com/puppetlabs/cmdb/scf/storage.clj
@@ -244,7 +244,11 @@
   we need to make sure that when generating a hash for a resource we
   look at a stably-sorted view of the resource. Thus, we need to sort
   both the resource as a whole as well as any nested collections it
-  contains."
+  contains.
+
+  This differs from `catalog-resource-identity-string` in that it doesn't
+  consider resource metadata. This function is used to determine whether a
+  resource needs to be stored or is already present in the database."
   [{:keys [type title parameters] :as resource}]
   {:pre  [(map? resource)]
    :post [(string? %)]}
@@ -263,7 +267,8 @@
   "Compute a stably-sorted, string representation of the given resource that
   will uniquely identify it with respect to a catalog. Unlike
   `resource-identity-string`, this string will also include the resource
-  metadata."
+  metadata. This function is used as part of determining whether a catalog
+  needs to be stored."
   [{:keys [type title parameters tags exported file line] :as resource}]
   {:pre [(map? resource)]
    :post [(string? %)]}


Added additional gnu assembly types (subtract, add, multiply)

error: pathspec 'src/clj/minijava/gas.clj' did not match any file(s) known to git

--- src/clj/minijava/gas.clj
+++ src/clj/minijava/gas.clj
@@ -0,0 +1,23 @@
+(ns minijava.gas
+	"Instructions of GNU x86 assembly"
+  (:use (minijava ir)))
+
+;;movl %eax, %ebx copies the contents of %eax to %ebx
+(deftype movl [src dst]
+  clojure.lang.IPersistentMap)
+
+  ;;Adds the first operand to the second, storing the result in the second
+ (deftype addl [src dst]
+  clojure.lang.IPersistentMap)
+
+  ;;Subtract the two operands. This subtracts the first operand from the second, and stores the result in the second operand.
+   (deftype subl [src dst]
+  clojure.lang.IPersistentMap)
+
+  ;;Performs signed multiplication and stores the result in the second operand.
+  ;;If the second operand is left out, it is assumed to be %eax,
+  ;;and the full result is stored in the double-word %edx:%eax.
+ (deftype imul [src dst]
+  clojure.lang.IPersistentMap)
+
+


Deleted unused compare-key fn (closes #24)

--- src/datascript/core.cljs
+++ src/datascript/core.cljs
@@ -29,17 +29,6 @@

 (defprotocol ISearch
   (-search [data pattern]))
-
-(defn- compare-key [k o1 o2]
-  (let [k1 (get o1 k)
-        k2 (get o2 k)]
-    (if (and (some? k1) (some? k2))
-      (let [t1 (type k1)
-            t2 (type k2)]
-        (if (= t1 t2)
-          (compare k1 k2)
-          (compare t1 t2)))
-      0)))

 (defn cmp-val [o1 o2]
   (if (and (some? o1) (some? o2))


decisions: group similar actions

decisions: group similar actions

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/pyr/bundes.git/'


SPEC: geometry

SPEC: geometry

error: pathspec 'src/clojure/yaw/spec.clj' did not match any file(s) known to git

--- src/clojure/yaw/spec.clj
+++ src/clojure/yaw/spec.clj
@@ -0,0 +1,52 @@
+(ns yaw.spec
+  (:require [clojure.spec.alpha :as s]))
+
+(s/def :coord/gen number?)
+(s/def :coord/norm (s/and :coord/gen #(and (<= % 1) (>= % -1))))
+
+(s/def :vector/norm (s/tuple :coord/norm :coord/norm :coord/norm))
+
+(s/def :vector/gen (s/tuple :coord/gen :coord/gen :coord/gen))
+
+;; maybe use `keyword?` instead?
+(s/def ::vertices (s/map-of ident? :vector/gen))
+
+(s/def :face/n :vector/norm)
+(s/def :face/v (s/coll-of ident?))
+(s/def ::face (s/keys :req-un [:face/n :face/v]))
+
+(s/def ::faces (s/map-of ident? ::face))
+
+(s/def ::geometry (s/keys :req-un [::vertices ::faces]))
+
+;; Wrap the geometry in a `mesh` (`object`?) that will also
+;; hold texture and material info
+(s/def ::mesh (s/keys :req-un [::geometry]))
+
+;; Here's how you'd define a cube centered around [0 0 0]
+;; One issue with this is the splitting into triangles.
+;; We don't want to bother the user with triangles
+;;   this allows the abstraction from triangles,
+;;   but then we'd need some way to split a quand into 2 tri,
+;;   and have other splitting methods for other faces too.
+;; (s/valid? ::geometry
+;;           {:vertices {:a [1 1 1]
+;;                       :b [1 -1 1]
+;;                       :c [-1 -1 1]
+;;                       :d [-1 1 1]
+;;                       :e [1 1 -1]
+;;                       :f [1 -1 -1]
+;;                       :g [-1 -1 -1]
+;;                       :h [-1 1 -1]}
+;;            :faces {:A {:n [0 0 1]
+;;                        :v [:a :b :c :d]}
+;;                    :B {:n [0 0 -1]
+;;                        :v [:e :f :g :h]}
+;;                    :C {:n [0 1 0]
+;;                        :v [:a :e :h :d]}
+;;                    :D {:n [0 -1 0]
+;;                        :v [:b :f :g :c]}
+;;                    :E {:n [1 0 0]
+;;                        :v [:a :e :f :b]}
+;;                    :F {:n [-1 0 0]
+;;                        :v [:d :c :g :h]}}})


improved error handling

improved error handling

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/clojure-ml/cml.git/'


Number the port.

Number the port.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/mtravers/incidents.git/'


Fixed string/replace in base-url-path

Fixed string/replace in base-url-path

--- support/src/figwheel/client/utils.cljs
+++ support/src/figwheel/client/utils.cljs
@@ -12,7 +12,7 @@

 (defn host-env? [] (if (node-env?) :node :html))

-(defn base-url-path [] (string/replace goog/basePath #"(.*)goog/" #(str %2)))
+(defn base-url-path [] (string/replace goog/basePath #"(.*)goog/" "$1"))

 (defn dispatch-custom-event [event-name data]
   (when (and (html-env?) (aget js/window "CustomEvent"))


Started day3 of clojure

Started day3 of clojure

Since the last task seems to be quite intense and advanced, I'll
probably postpone it until I gained more knowledge with Clojure in
general (as currently my plan is to go deeper with this language).

error: pathspec 'clojure-days/src/clojure_days/day_3.clj' did not match any file(s) known to git

--- clojure-days/src/clojure_days/day_3.clj
+++ clojure-days/src/clojure_days/day_3.clj
@@ -0,0 +1,57 @@
+(ns clojure-days.day-3)
+
+;;; FIND
+
+;; A queue implementation that blocks when the queue is empty and waits for a
+;; new item in the queue.
+
+; clojure.lang.PersistentQueue:
+;   - http://stackoverflow.com/questions/2760017/ \\
+;     producer-consumer-with-qualifications
+;   - https://github.com/clojure/clojure/blob/master/ \\
+;     src/jvm/clojure/lang/PersistentQueue.java
+
+
+
+;;; DO
+
+;; Use refs to create a vector of accounts in memory. Create debit and credit
+;; functions to change the balance of an account.
+(def accounts (ref []))
+
+(defn credit
+  [accounts account-number amount]
+  (map
+    (fn [account]
+      (if (= (:number account) account-number)
+        (assoc account :balance (+ (:balance account) amount))
+        account))
+    accounts))
+
+(defn debit
+  [accounts account-number amount]
+  (credit accounts account-number (- amount)))
+
+(dosync (alter accounts conj {:number 123, :balance 100}
+                             {:number 456, :balance 200}
+                             {:number 789, :balance -100}))
+
+(dosync (alter accounts debit 123 99))
+(dosync (alter accounts debit 456 399))
+(dosync (alter accounts credit 789 199))
+
+
+;; In this section, I’m going to outline a single problem called sleeping
+;; barber. It was created by Edsger Dijkstra in 1965. It has these charac-
+;; teristics:
+;; - barber shop takes customers.
+;; - Customers arrive at random intervals, from ten to thirty millisec- onds.
+;; - The barber shop has three chairs in the waiting room.
+;; - The barber shop has one barber and one barber chair.
+;; - When the barber’s chair is empty, a customer sits in the chair, wakes up
+;;   the barber, and gets a haircut.
+;; - If the chairs are occupied, all new customers will turn away.
+;; - Haircuts take twenty milliseconds.
+;; - After a customer receives a haircut, he gets up and leaves.
+;; Write a multithreaded program to determine how many haircuts a bar- ber can
+;; give in ten seconds.


rev notes

rev notes

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/michaelsbradleyjr/transwarp.git/'


warp? test-func helpers

warp? test-func helpers


[#841] Actually add variants namespace

[#841] Actually add variants namespace

error: pathspec 'backend/src/akvo/lumen/variant.clj' did not match any file(s) known to git

--- backend/src/akvo/lumen/variant.clj
+++ backend/src/akvo/lumen/variant.clj
@@ -0,0 +1,16 @@
+(ns akvo.lumen.variant)
+
+(defn variant? [v]
+  (and (vector? v)
+       (= (count v) 2)
+       (let [t (first v)]
+         (and (keyword? t)
+              (boolean (namespace t))))))
+
+(defn tag [v]
+  {:pre [(variant? v)]}
+  (first v))
+
+(defn value [v]
+  {:pre [(variant? v)]}
+  (second v))


Correct arg name in docstring

Correct arg name in docstring

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/election-notification-works.git/'


adds a dummy post

adds a dummy post

error: pathspec 'src/pc/views/blog/instrumenting_om_components.clj' did not match any file(s) known to git

--- src/pc/views/blog/instrumenting_om_components.clj
+++ src/pc/views/blog/instrumenting_om_components.clj
@@ -0,0 +1,67 @@
+(ns pc.views.blog.instrumenting-om-components)
+
+(defn instrumenting-om-components []
+  {:title "Instrumenting Om Components"
+   :body
+   [:div.post
+    [:p
+     "One of the big challenges in using React.js and Om is understanding how the code you write "
+     "impacts performance and rendering time. In most cases, you shouldn’t care – React’s diffing model and "
+     [:a {:href "https://swannodette.github.io/2013/12/17/the-future-of-javascript-mvcs/"}
+      "Om’s handling of immutable data structures"]
+     " make hand-tuning mostly superfluous. There will always be places where the defaults are too slow and "
+     "micro-optimizations are required for the sake of performance. In those cases, Om’s global concerns allow "
+     "us to create tools to see the bottlenecks and understand the impact of our optimzations."]
+
+    [:p "I’ll show you how CircleCI leverages Om’s new “descriptor” overrides to understand performance in its "
+     [:a {:href "https://github.com/circleci/frontend"} "open-source frontend"] ". "
+     [:a {:href "https://circleci.com"} "CircleCI"] " is a hosted Continuous Delivery platform used by teams that "
+     "want state-of-the-art CI and deployment."]
+
+    [:h2 "Visually indicating performance bottlenecks"]
+    [:p "Before React.js, " [:a {:href "http://www.html5rocks.com/en/tutorials/speed/unnecessary-paints/"} "paint rectangles"]
+     " were a great way to identify performance bottlenecks in your application. If your application "
+     "was unnecessarily mutating the DOM, Chrome would helpfully show you a transparent overlay over the "
+     "parts of the page that were modified."]
+
+    [:p "Here’s an example from Circle’s old haml-coffee/knockout.js frontend. We noticed that the site "
+     "was feeling a bit sluggish. The paint rectangles made it obvious that the problem was the sidebar"
+     " being re-rendered even though the content stayed the same."]
+
+    [:p " " [:video {:controls "", :src "/assets/video/paint-rectangles.mp4"}] " "]
+
+    [:p "React diffs against its virtual copy of the DOM before it writes to the actual DOM, so paint rectangles "
+     "can’t show you where you’re rendering too much. The benefit of React’s global optimization is that we never "
+     "make those slow DOM updates, but the cost is that we can’t use all of the browser’s built-in tools for debugging."]
+
+    [:p "My first approach to the problem was to hack the paint rectangles back into the page. I had each "
+     "component generate a random border color each time it rendered, forcing React to change the DOM. By using a "
+     [:a {:href "https://github.com/circleci/frontend/blob/7cf4a54480bc5aa772f465afced98d8f3d84dc8a/src-cljs/frontend/utils.clj#L51"}
+      "custom " [:code "html"] " macro"]
+     ", I was able to toggle it on and off globally."]
+
+    [:p "In the example below, we can quickly see that typing a new character into the input box "
+     "is triggering re-renders in unrelated components."]
+
+    [:p " " [:video {:controls "", :src "/assets/video/render-colors.mp4"}] " "]
+
+    [:p "This is a nice step forward. Like paint rectangles, it gives us a visual indication of possible "
+     "performance bottlenecks. But we can do so much better. Paint rectangles can show us the regions that "
+     "are being re-rendered, but that’s not how we think of components when we write and use them. Like any "
+     "function, we want to refer to them by their name. The paint rectangles also don’t tell us how long it "
+     "takes to render each region, so we don’t know which component to prioritize."]
+
+    [:h2 "Instrumenting components"]
+    [:p "A better solution would keep track of the time it took to render each component and refer to the component "
+     "by its DisplayName. We can do that if we start a clock in the componentWillUpdate lifecycle event and stop it "
+     "in the componentDidUpdate event. Om makes this very easy by letting us instrument our components and provide "
+     "our own versions of the react lifecycle events. With "
+     [:a {:href "https://github.com/circleci/frontend/commit/2f58976e57000c448a22440e69573c4f0b7c581b"} "~100 lines of code"]
+     " and a few hours of free time, I was able to add meaningful performance instrumentation to our application."]
+
+    [:p " " [:video {:controls "", :src "/assets/video/real-instrumentation.mp4"}] " "]
+
+    [:p "The console-style instrumentation panel drops down when we hit Ctrl+j and we can see it update in real-time "
+     "as components are rendered."]
+
+    [:p "Now it’s easy to identify the bottlenecks and measure the effects of our optimizations on render times."]]})


added docker auth service for docker registry

error: pathspec 'src/clj/swarmpit/dockerauth/client.clj' did not match any file(s) known to git

--- src/clj/swarmpit/dockerauth/client.clj
+++ src/clj/swarmpit/dockerauth/client.clj
@@ -0,0 +1,48 @@
+(ns swarmpit.dockerauth.client
+  (:refer-clojure :exclude [get])
+  (:require [org.httpkit.client :as http]
+            [cheshire.core :refer [parse-string generate-string]]
+            [swarmpit.token :as token]))
+
+(def ^:private base-url "https://auth.docker.io")
+
+(defn- execute
+  [call-fx]
+  (let [{:keys [status body error]} call-fx]
+    (if error
+      (throw
+        (ex-info "Docker auth client failure!"
+                 {:status 500
+                  :body   {:error (:cause (Throwable->map error))}}))
+      (let [response (parse-string body true)]
+        (if (> 400 status)
+          response
+          (throw
+            (ex-info "Docker auth error!"
+                     {:status status
+                      :body   {:error response}})))))))
+
+(defn- get
+  [api headers params]
+  (let [url (str base-url api)
+        options {:headers      headers
+                 :query-params params}]
+    (execute @(http/get url options))))
+
+(defn- basic-auth
+  [user]
+  {"Authorization" (token/generate-basic (:username user)
+                                         (:password user))})
+
+(defn- headers
+  [user]
+  (if (some? user)
+    (basic-auth user)
+    nil))
+
+(defn token
+  [user repository]
+  (let [headers (headers user)
+        params {:service "registry.docker.io"
+                :scope   (str "repository:" repository ":pull")}]
+    (get "/token" headers params)))


revert to transforming music-data to a string

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/jtbeckha/alda.git/'


Unused require.

Unused require.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/couragelabs/crispy-tatertot.git/'


[WM] fix /ping

[WM] fix /ping

The new prefix-tree router in pedestal 0.4.0 doesn't support both /:param and /constant routes, but we want that and we don't have anywhere near enough routes to care about the performance of prefix-tree.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/user-http-api.git/'


Make org links optional

Make org links optional

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/physion/ovation-webapi.git/'


Just drop the uninitialised macro symbols

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/michaelsbradleyjr/shen.clj.git/'


single-column footer

single-column footer

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/amonks/presence.monks.co.git/'


mouse didn't go with last

mouse didn't go with last

error: pathspec 'src-cljs/frontend/components/mouse.cljs' did not match any file(s) known to git


Add utilities to deal with the pipeline2 web service api

error: pathspec 'src/mdr2/pipeline2/utils.clj' did not match any file(s) known to git

--- src/mdr2/pipeline2/utils.clj
+++ src/mdr2/pipeline2/utils.clj
@@ -0,0 +1,25 @@
+(ns mdr2.pipeline2.utils
+  "Utilities for dealing with the [Pipeline2 Web Service
+  API](https://code.google.com/p/daisy-pipeline/wiki/WebServiceAPI)"
+  (:require [clojure.zip :refer [xml-zip]]
+            [clojure.data.zip.xml :refer [xml1-> attr]]
+            [mdr2.pipeline2.core :as dp2]))
+
+(def ^:private poll-interval 1000)
+
+(defn- get-id [job]
+  (-> job xml-zip (xml1-> (attr :id))))
+
+(defn- get-status [job]
+  (-> job xml-zip (xml1-> (attr :status))))
+
+(defn create-job-and-wait [script inputs options]
+  (let [id (get-id (dp2/job-create script inputs options))]
+    (Thread/sleep poll-interval) ; wait a bit before polling the first time
+    (loop [result (dp2/job id)]
+      (let [status (get-status result)]
+        (if (= "RUNNING" status)
+          (do
+            (Thread/sleep poll-interval)
+            (recur (dp2/job id)))
+          result)))))


[EN] Get rid of singletonius

[EN] Get rid of singletonius

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/electorate-works.git/'


Fixed rest api call

Fixed rest api call

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/parenode/clojure-cup-2015.git/'


Keep screen centered on player at all times.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/Yoshiyuka/cthulhu.git/'


Release 0.12.7

Release 0.12.7

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject clojars-web "0.12.6"
+(defproject clojars-web "0.12.7"
   :dependencies [[org.clojure/clojure "1.4.0"]
                  [org.clojure/tools.cli "0.2.1"]
                  [org.apache.maven/maven-model "3.0.4"


Upgrade Clojure and ClojureScript

Upgrade Clojure and ClojureScript

--- project.clj
+++ project.clj
@@ -40,8 +40,8 @@
   :jar-exclusions [#"\.cljx|\.swp|\.swo|user.clj"]

   :profiles {:dev {:dependencies [[org.clojure/tools.namespace "0.2.10"]
-                                  [org.clojure/clojure "1.6.0"]
-                                  [org.clojure/clojurescript "0.0-3126"]
+                                  [org.clojure/clojure "1.7.0-RC1"]
+                                  [org.clojure/clojurescript "0.0-3269"]
                                   [funcool/cljs-testrunners "0.1.0-SNAPSHOT"]]
                    :codeina {:sources ["output/src"]
                              :output-dir "doc/codeina"}


First version of Lein build.

First version of Lein build.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/B2W-Digital/pdg-core.git/'


version update

version update

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/CraZySacX/nitelens.git/'


Upgrade carmine

Upgrade carmine

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/vincentstorme/clojureme.git/'


Update clojurescript compiler version.

Update clojurescript compiler version.

--- project.clj
+++ project.clj
@@ -5,7 +5,7 @@
             :url "http://opensource.org/licenses/BSD-2-Clause"}

   :dependencies [[org.clojure/clojure "1.6.0"]
-                 [org.clojure/clojurescript "0.0-2227"]]
+                 [org.clojure/clojurescript "0.0-2268"]]

   :source-paths ["target/classes"]
   :test-paths ["target/testclasses"]


:arrow_up: Update dependency

:arrow_up: Update dependency

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/maoo/bot-unfurl.git/'


[WM] Use snapshot of kehaar for NewRelic tracing

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/partner-works.git/'


Leiningen project.clj.

Leiningen project.clj.

error: pathspec 'project.clj' did not match any file(s) known to git

--- project.clj
+++ project.clj
@@ -0,0 +1,14 @@
+(defproject top-five-things "1.0.0-SNAPSHOT"
+  :description "Web server and API for www.top-five-things.com"
+  :url "https://www.top-five-things.com"
+  :license {:name "The MIT License (MIT)"
+            :url "https://opensource.org/licenses/MIT"}
+  :dependencies [[org.clojure/clojure "1.7.0"]
+                 [compojure "1.4.0"]
+                 [ring/ring-jetty-adapter "1.4.0"]
+                 [environ "1.0.1"]]
+  :min-lein-version "2.0.0"
+  :plugins [[environ/environ.lein "0.3.1"]]
+  :hooks [environ.leiningen.hooks]
+  :uberjar-name "top-five-things.jar"
+  :profiles {:production {:env {:production true}}})


project.clj for leiningen build

project.clj for leiningen build

--- project.clj
+++ project.clj
@@ -0,0 +1,9 @@
+(defproject com.callisto/JMatIO "1.1"
+
+  :description "Matlab IO"
+
+  :license "Copyright (c) 2006, Wojciech Gradkowski. See license.txt"
+
+  :plugins [[s3-wagon-private "1.1.2"]]
+
+  :java-source-paths ["src/main/java"])


0.2.4

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject riemann "0.2.4-SNAPSHOT"
+(defproject riemann "0.2.4"
   :description
 "A network event stream processor. Intended for analytics, metrics, and alerting; and to glue various monitoring systems together."
   :url "http://github.com/aphyr/riemann"


Bump version to 0.11.3-SNAPSHOT

Bump version to 0.11.3-SNAPSHOT

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject clojars-web "0.11.2"
+(defproject clojars-web "0.11.3-SNAPSHOT"
   :dependencies [[org.clojure/clojure "1.4.0"]
                  [org.clojure/tools.cli "0.2.1"]
                  [org.apache.maven/maven-model "3.0.4"


Version 23.0.0

Version 23.0.0

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


bump up version

bump up version

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject cryogen/lein-template "0.2.45"
+(defproject cryogen/lein-template "0.2.46"
   :description "A Leiningen template for the Cryogen static site generator"
   :url "https://github.com/cryogen-project/cryogen"
   :license {:name "Eclipse Public License"


project.clj

project.clj

--- project.clj
+++ project.clj
@@ -0,0 +1,11 @@
+(defproject day-of-datomic-cloud "0.1.0-SNAPSHOT"
+  :description "Day of Datomic Cloud"
+  :source-paths ["src" "tutorial" "doc-examples"]
+  :resource-paths ["resources"]
+  :dependencies [[org.clojure/clojure "1.9.0-beta2"]
+                 [org.clojure/data.generators "0.1.2"]
+                 [org.clojure/data.csv "0.1.4"]
+                 [org.clojure/data.json "0.2.6"]
+                 [com.datomic/client-cloud "0.8.42"]
+                 [seesaw/seesaw "1.4.5"]])
+


Fading out pulse animation

Fading out pulse animation

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/dominikzarzecki/meteor-impacts-timelapse.git/'


add test runner file for cljs

add test runner file for cljs

error: pathspec 'test/com/rpl/specter/cljs_test_runner.cljs' did not match any file(s) known to git

--- test/com/rpl/specter/cljs_test_runner.cljs
+++ test/com/rpl/specter/cljs_test_runner.cljs
@@ -0,0 +1,5 @@
+(ns com.rpl.specter.cljs-test-runner
+  (:require [cljs.test :as test :refer-macros [run-tests]]
+            [com.rpl.specter.core-test]))
+
+(run-tests 'com.rpl.specter.core-test)


Removed extraneous logging.

Removed extraneous logging.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/couragelabs/crispy-tatertot.git/'


Avoid boxing

Avoid boxing

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/leif47/immutabledb-experimental.git/'


Add "toolbox" namespace of common task functions.

error: pathspec 'src/clojure/parkour/toolbox.clj' did not match any file(s) known to git

--- src/clojure/parkour/toolbox.clj
+++ src/clojure/parkour/toolbox.clj
@@ -0,0 +1,26 @@
+(ns parkour.toolbox
+  "Utility collection of common task functions."
+  (:require [clojure.core.reducers :as r]
+            [parkour (mapreduce :as mr) (reducers :as pr)]))
+
+(defn by-p
+  "Partitioner for partitioning by the result of applying a provided function
+`f` to each tuple key."
+  {::mr/adapter mr/partfn}
+  [_ f]
+  (fn ^long [k _ ^long nparts]
+    (let [^Object o (f k)]
+      (-> o .hashCode (mod nparts)))))
+
+(defn nth0-p
+  "Partitioner for partitioning on initial element of key."
+  ^long [k _ ^long nparts]
+  (let [^Object o (pr/nth0 k)]
+    (-> o .hashCode (mod nparts))))
+
+(defn keyvalgroups-r
+  "Expect `coll` to consist of key/val-group pairs.  Yield tuples of each key
+and the result of `reduce`ing the val-group with `f` and optional `init`."
+  {::mr/source-as :keyvalgroups}
+  ([f coll] (r/map (fn [[k vs]] [k (reduce f vs)]) coll))
+  ([f init coll] (r/map (fn [[k vs]] [k (reduce f init vs)]) coll)))


fix merge

fix merge

--- src/metabase/models/field.clj
+++ src/metabase/models/field.clj
@@ -67,7 +67,7 @@
 (defentity Field
   (table :metabase_field))

-(defmethod post-select Field [_ {:keys [table_id] :as field}]
+(defmethod post-select Field [_ {:keys [id special_type table_id] :as field}]
   (u/assoc* field
             :table     (delay (sel :one 'metabase.models.table/Table :id table_id))
             :db        (delay @(:db @(:table <>)))


let people modify :details of a Query.

let people modify :details of a Query.

--- src/metabase/models/query.clj
+++ src/metabase/models/query.clj
@@ -34,7 +34,7 @@

 (defmethod pre-update Query [_ {:keys [version] :as query}]
   (-> query
-      (u/select-non-nil-keys :name :database_id :public_perms)
+      (u/select-non-nil-keys :name :database_id :public_perms :details)
       (assoc :version (+ 1 version))))

 (defmethod post-select Query [_ {:keys [creator_id database_id] :as query}]


Adding benchmarks

Adding benchmarks

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/xcthulhu/clj-bitauth.git/'


Messing about.

Messing about.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/fhitchen/des3.git/'


Add lein-test-refresh

Add lein-test-refresh


Version 1.9.3

Version 1.9.3

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/starcity-properties/odin.git/'


[WM] update description & url in project.clj

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/user-http-api.git/'


Version 132

Version 132

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/tobias/clojars-web.git/'


Upgraded ancient artifacts.

Upgraded ancient artifacts.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/couragelabs/coachbot.git/'


Upgrade some dependencies

Upgrade some dependencies

--- project.clj
+++ project.clj
@@ -24,9 +24,9 @@
    [prismatic/schema "1.1.1"]
    [potemkin "0.4.3"]

-   [org.clojure/core.async "0.2.374"]
+   [org.clojure/core.async "0.2.391"]
    [org.clojure/data.codec "0.1.0"]
-   [org.clojure/tools.reader "1.0.0-beta1"]
+   [org.clojure/tools.reader "1.0.0-beta3"]

    ;; Built-in support for Cognitect transit
    [com.cognitect/transit-clj "0.8.285"]


Fix tests

Fix tests

--- project.clj
+++ project.clj
@@ -58,10 +58,10 @@

     :source-paths
     [
-     ;; We use the full bundle, that contains the most
+     ;; We use the 'default' bundle, that contains the most
      ;; test coverage. Tests for other bundles can be
      ;; run from the bundle directory itself.
-     "bundles/full/src"
+     "bundles/default/src"

      ;; source directories of dependency modules.
      "ext/aleph/src"
@@ -76,10 +76,10 @@
      "ext/transit/src"
      "ext/webjars/src"]

-    :test-paths ["bundles/full/test"]}
+    :test-paths ["bundles/default/test"]}

    :dev
-   [:test ; so we can run the tests from our REPL
+   [:test                      ; so we can run the tests from our REPL
     {:jvm-opts
      ["-Xms1g" "-Xmx1g"
       "-server"


tests: starting

tests: starting

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/tiagoantao/turtle.git/'


Upgrade datomic-toolbox to 2.0.4

Upgrade datomic-toolbox to 2.0.4

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/election-authority-works.git/'


Version 1.7.2

Version 1.7.2


Updated dependencies.

Updated dependencies.

--- project.clj
+++ project.clj
@@ -8,10 +8,10 @@
             :url "http://www.eclipse.org/legal/epl-v10.html"}
   :dependencies [[com.facebook/react "0.8.0.1"]
                  [org.clojure/clojure "1.5.1"]
-                 [org.clojure/clojurescript "0.0-2127"]]
+                 [org.clojure/clojurescript "0.0-2138"]]
   :cljsbuild {:builds []}
-  :profiles {:dev {:dependencies [[crate "0.2.3" :scope "dev"]
-                                  [prismatic/dommy "0.1.1"]]
+  :profiles {:dev {:dependencies [[crate "0.2.5" :scope "dev"]
+                                  [prismatic/dommy "0.1.2"]]
                    :plugins [[com.keminglabs/cljx "0.3.2"] ;; Must be before Austin: https://github.com/cemerick/austin/issues/37
                              [com.cemerick/austin "0.1.3"]
                              [com.cemerick/clojurescript.test "0.2.1"]


Upgrades!

Upgrades!

Though compojure-api couldn't be due to an error in ring finding re-charset. We need to figure this out.


Update devcards core to use ptm/ui/card instead of cards


Basic session model code.

Basic session model code.

error: pathspec 'src/dummy_om_app/app/models/session.cljs' did not match any file(s) known to git

--- src/dummy_om_app/app/models/session.cljs
+++ src/dummy_om_app/app/models/session.cljs
@@ -0,0 +1,22 @@
+(ns dummy-om-app.app.models.session
+  (:require [dummy-om-app.app.util  :as util]
+            [dummy-om-app.app.state :as app-state]
+            [dummy-om-app.app.xhr   :as xhr]))
+
+(defn get-session
+  []
+  (xhr/xhr-req {:method :get
+                :url    "session"
+                :on-complete (fn [resp]
+                               (swap! app-state/app-state assoc :session resp))}))
+
+(defn dispatch-on-session-status
+  [session-dispatch-table & [data]]
+  (xhr/xhr-req
+   {:method      :get
+    :url         "session"
+    :on-complete (fn [{:keys [status] :as resp}]
+                   (when-let [handler (get session-dispatch-table status)]
+                     (if data
+                       (handler data)
+                       (handler))))}))


Added PaVE tests.

Added PaVE tests.

error: pathspec 'test/com/lemondronor/turboshrimp/pave_test.clj' did not match any file(s) known to git

--- test/com/lemondronor/turboshrimp/pave_test.clj
+++ test/com/lemondronor/turboshrimp/pave_test.clj
@@ -0,0 +1,6 @@
+(ns com.lemondronor.turboshrimp.pave-test
+  (:require [clojure.test :refer :all]
+            [com.lemondronor.turboshrimp.pave :as pave]))
+
+(deftest pave-tests
+  )


config dependency removed

config dependency removed

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/Zallin/fhirvc.git/'


bump version to 2.8.5

bump version to 2.8.5

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/B2W-BIT/restQL-server.git/'


Version 1.9.4-SNAPSHOT

Version 1.9.4-SNAPSHOT


Restore snapshot marker

Restore snapshot marker

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/dignati/om-charts.git/'


bump project dependencies [org.clojure/clojurescript "0.0-2760"] [reagent "0.5.0-alpha3"]

--- project.clj
+++ project.clj
@@ -3,9 +3,9 @@
   :url          "https://github.com/Day8/re-frame.git"

   :dependencies [[org.clojure/clojure "1.6.0"]
-                 [org.clojure/clojurescript "0.0-2665"]
+                 [org.clojure/clojurescript "0.0-2760"]
                  [org.clojure/core.async "0.1.346.0-17112a-alpha" :scope "provided"]
-                 [reagent "0.4.3"]
+                 [reagent "0.5.0-alpha3"]
                  [historian "1.0.7"]]

   :profiles     {:debug {:debug true}


change blueprints version

change blueprints version


bumped Antizer version to get Breadcrumb.Item


Updates version.

Updates version.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/decomputed/projectEuler.git/'


Update dependencies.

Update dependencies.

--- project.clj
+++ project.clj
@@ -7,4 +7,4 @@
   :java-source-paths ["src/java"]
   :dependencies [[org.clojure/clojure "1.5.1"]
                  [org.apache.avro/avro "1.7.4"]
-                 [cheshire/cheshire "5.1.1"]])
+                 [cheshire/cheshire "5.2.0"]])


Version 1.15.11-SNAPSHOT

Version 1.15.11-SNAPSHOT


Fix exclusion

Fix exclusion

--- project.clj
+++ project.clj
@@ -9,7 +9,7 @@
   :exclusions [com.stuartsierra/component
                prismatic/schema
                org.clojure/clojure
-               org.clojure/tools-reader]
+               org.clojure/tools.reader]

   :dependencies
   [[bidi "1.21.0" :exclusions [ring/ring-core]]


[WM] update clj-time to 0.11.0 to fix S3 bug

Some versions of Java 8 and S3 don't like each other, as I saw on my dev
machine. This diffuses the ticking time bomb.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/scheduled-message-works.git/'


project: update libs

project: update libs

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/pyr/bundes.git/'


Version 57-SNAPSHOT

Version 57-SNAPSHOT

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


upgrading to Clojure 1.4

upgrading to Clojure 1.4

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/michaelsbradleyjr/shen.clj.git/'


* add an alias to leiningen so that `lein test` runs expectations with the appropriate profiles * add some jvm args to our expectations profile so that it runs in a more isolated environment

--- project.clj
+++ project.clj
@@ -5,6 +5,7 @@
   :description "Metabase Community Edition"
   :url "http://metabase.com/"
   :min-lein-version "2.3.0"
+  :aliases {"test" ["with-profile" "+expectations" "expectations"]}
   :dependencies [[org.clojure/clojure "1.6.0"]
                  [org.clojure/core.async "LATEST"]                    ; facilities for async programming + communication (using 'LATEST' because this is an alpha library)
                  [org.clojure/core.match "0.3.0-alpha4"]              ; optimized pattern matching library for Clojure
@@ -69,5 +70,8 @@
                               "-XX:MaxPermSize=128m"                  ; a little more headroom for PermGen
                               "-XX:+CMSClassUnloadingEnabled"         ; let Clojure's dynamically generated temporary classes be GC'ed from PermGen
                               "-XX:+UseConcMarkSweepGC"]}             ; Concurrent Mark Sweep GC needs to be used for Class Unloading (above)
+             :expectations {:jvm-opts ["-Dmb.db.file=target/metabase-test"
+                                       "-Dmb.jetty.join=false"
+                                       "-Dmb.jetty.port=3001"]}
              :uberjar {:aot :all
                        :prep-tasks ["npm" "gulp" "javac" "compile"]}})


Version 1.15.2

Version 1.15.2


Updated #5.

Updated #5.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/decomputed/decomputed.com.git/'


Version 20.0.0-SNAPSHOT

Version 20.0.0-SNAPSHOT

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


Lein v 2.6 on heroku

Lein v 2.6 on heroku

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/IceRaptor/ca_scheduler.git/'


Aleph 0.2.1-beta1

Aleph 0.2.1-beta1

--- project.clj
+++ project.clj
@@ -25,7 +25,7 @@
                                        com.sun.jdmk/jmxtools
                                        com.sun.jmx/jmxri]]
     [log4j/apache-log4j-extras "1.0"]
-    [aleph "0.2.1-alpha2-SNAPSHOT"]
+    [aleph "0.2.1-beta1"]
     [io.netty/netty "3.3.0.Final"]
     [protobuf "0.6.0-beta7"]
     [org.antlr/antlr "3.2"]


Use common AWS keys for repository

Use common AWS keys for repository

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/physion/ovation-webapi.git/'


[WM] update deps to latest versions

[WM] update deps to latest versions

pedestal-toolbox 0.6.1 -> 0.6.2 fixes Content-Type regex bug.
prismatic/schema 0.4.3 -> 0.4.4 just b/c I was in there anyway.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/election-notification-http-api.git/'


Update deps

Update deps

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/election-http-api.git/'


bump version to 2.8.25

bump version to 2.8.25


Use 3.0.0-SNAPSHOT

Use 3.0.0-SNAPSHOT


lein-release plugin: preparing 0.1.0 release

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject sablono "0.1.0-SNAPSHOT"
+(defproject sablono "0.1.0"
   :description "Lisp style templating for Facebook's React."
   :url "http://github.com/r0man/sablono"
   :author "Roman Scherer"


Version 184-SNAPSHOT

Version 184-SNAPSHOT

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/tobias/clojars-web.git/'


lein-release plugin: bumped version from 0.2.9 to 0.2.10-SNAPSHOT for next development cycle

--- project.clj
+++ project.clj
@@ -1,4 +1,4 @@
-(defproject sablono "0.2.9"
+(defproject sablono "0.2.10-SNAPSHOT"
   :description "Lisp style templating for Facebook's React."
   :url "http://github.com/r0man/sablono"
   :author "Roman Scherer"


Add deps

Add deps


chore(core): update core version to 2.8.21


Fixing version and license

Fixing version and license

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/narkisr/cloujsearch.git/'


Version 138

Version 138


Version 126-SNAPSHOT

Version 126-SNAPSHOT


bump kehaar version

bump kehaar version

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/notification-works.git/'


add info about policy options in method documentations

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/colophon/clarango.git/'


Version 144-SNAPSHOT

Version 144-SNAPSHOT


Add releases repo

Add releases repo

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/audiogum/picomock.git/'


updated version grab

updated version grab

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/CraZySacX/nitelens.git/'


chore(core): update version to 2.8.12

chore(core): update version to 2.8.12

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/B2W-BIT/restQL-server.git/'


more Number of Ones

more Number of Ones

Clojure

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/nikai3d/ce-challenges.git/'


Update resources section

Update resources section

--- src/clj/clojuredocs/pages/intro.clj
+++ src/clj/clojuredocs/pages/intro.clj
@@ -109,7 +109,7 @@
       [:p
        "New to Clojure and not sure where to start? Here are a few good resources to get you off on the right foot:"]
       [:ul.getting-started-resources
-       [:li [:a {:href "http://www.infoq.com/presentations/Are-We-There-Yet-Rich-Hickey"} "Are We There Yet? (video)"]]
+       [:li [:a {:href "http://thechangelog.com/rich-hickeys-greatest-hits/"} "Rich Hickey's Greatest Hits (videos)"]]
        [:li [:a {:href "http://www.braveclojure.com"} "Clojure for the Brave and True"]]
        [:li [:a {:href "http://aphyr.com/posts/301-clojure-from-the-ground-up-welcome"}
              "Clojure from the Ground Up"]]


fix code redundancy

fix code redundancy

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/starcity-properties/odin.git/'


Added module: jenkins-api

Added module: jenkins-api

error: pathspec 'src/emender_service/jenkins_api.clj' did not match any file(s) known to git

--- src/emender_service/jenkins_api.clj
+++ src/emender_service/jenkins_api.clj
@@ -0,0 +1,8 @@
+(ns emender-service.jenkins-api)
+
+(require '[clojure.xml       :as xml])
+(require '[clojure.zip       :as zip])
+
+(require '[clojure.data.json :as json])
+(require '[clj-http.client   :as http-client])
+


read imported macros from clj, create special form list, and symbol->filename

--- scripts/get-symbol-metadata/src/core.clj
+++ scripts/get-symbol-metadata/src/core.clj
@@ -1,12 +1,16 @@
 (ns core
+  (:refer-clojure :exclude [replace])
   (:require
     [clojure.java.io :as io]
     [clojure.tools.reader :as reader]
     [clojure.tools.reader.reader-types :as readers]
-    [clojure.string :refer [split-lines join]]
+    [clojure.string :refer [split-lines join replace]]
     [cljs.env :as env]
     [cljs.tagged-literals :refer [*cljs-data-readers*]]
     [cljs.analyzer :refer [forms-seq analyze-file]]))
+
+(def special-forms
+  '[if do let quote var fn loop recur throw try . new set!])

 ;;------------------------------------------------------------
 ;; Form Retrieving
@@ -44,6 +48,17 @@
 ;; Form Formatting
 ;;------------------------------------------------------------

+(defn symbol->filename
+  [s]
+  (-> (name s)
+      (replace ">" "GT")
+      (replace "<" "LT")
+      (replace "!" "BANG")
+      (replace "?" "QMARK")
+      (replace "*" "STAR")
+      (replace "+" "PLUS")
+      (replace "/" "SLASH")))
+
 (defn get-def-name
   [form]
   (let [[a b c] form
@@ -80,26 +95,21 @@
    "clojure.set"    {:cljs {"set.cljs"    "clojurescript/src/cljs/clojure/set.cljs"}}
    "clojure.string" {:cljs {"string.cljs" "clojurescript/src/cljs/clojure/string.cljs"}}})

-(def repo-path "code-to-parse")
-
 (defn get-repo-path
   [& args]
-  (str repo-path "/" (get-in paths args)))
+  (str  "code-to-parse/" (get-in paths args)))

 (defmulti get-symbols (fn [ns-] ns-))

 (defmethod get-symbols "cljs.core" [ns-]
   (let [clj-forms      (get-forms-from-file (get-repo-path "cljs.core" :clj "core.clj"))
         clj-cljs-forms (get-forms-from-file (get-repo-path "cljs.core" :cljs "core.clj"))
+        imported-macros (nth (first (filter #(= 'import-macros (first %)) clj-cljs-forms)) 2)
         cljs-forms     (get-forms-from-file (get-repo-path "cljs.core" :cljs "core.cljs"))
-        ;; TODO: get import-macros vector from cljs.core clj
         ;; TODO: read in clojure.core forms listed in import-macros vector
         ]
-    (println
-      "cljs.core forms:"
-      (count clj-forms)
-      (count clj-cljs-forms)
-      (count cljs-forms))))
+    (println imported-macros)
+    ))

 (defmethod get-symbols "clojure.set" [ns-]
   (let [forms (get-forms-from-file (get-repo-path "clojure.set" :cljs "set.cljs"))]
@@ -119,7 +129,5 @@

 (defn -main
   []
-  (get-symbols "cljs.core")
-  (get-symbols "clojure.set")
-  (get-symbols "clojure.string"))
+  (get-symbols "cljs.core"))


Missing file

Missing file

error: pathspec 'test/circle/backend/build/utils.clj' did not match any file(s) known to git

--- test/circle/backend/build/utils.clj
+++ test/circle/backend/build/utils.clj
@@ -0,0 +1,8 @@
+(ns circle.backend.build.utils
+  (:require [circle.backend.build :as build]))
+
+(defn minimal-build [& {:keys [actions]}]
+  (build/build  {:project-name "test proj"
+                 :build-num 1
+                 :vcs-url "http://github.com/arohner/test-circle"
+                 :actions (or actions [])}))


more files

more files

error: pathspec 'src/cljs/schutzen/actors/ship.cljs' did not match any file(s) known to git

--- src/cljs/schutzen/actors/ship.cljs
+++ src/cljs/schutzen/actors/ship.cljs
@@ -0,0 +1,2 @@
+(ns schutzen.actors.ship "The main ship actor")
+


Add user/users-by-email

Add user/users-by-email

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/election-notification-works.git/'


Add test/user ns file.

Add test/user ns file.

error: pathspec 'test/user.clj' did not match any file(s) known to git

--- test/user.clj
+++ test/user.clj
@@ -0,0 +1,29 @@
+(ns user
+  (:require [clojure.tools.namespace.repl :as r]
+            [clojure.walk :refer [macroexpand-all]]
+            [clojure.pprint :refer [pprint]]
+            [clojure.test :as test]))
+
+(defn- run-test
+  ([] (run-test #"^promesa.tests.*"))
+  ([o]
+   (r/refresh)
+   (cond
+     (instance? java.util.regex.Pattern o)
+     (test/run-all-tests o)
+
+     (symbol? o)
+     (if-let [sns (namespace o)]
+       (do (require (symbol sns))
+           (test/test-vars [(resolve o)]))
+       (test/test-ns o)))))
+
+(defn -main
+  [& args]
+  (require 'promesa.tests.test-core)
+  (let [{:keys [fail]} (run-test)]
+    (if (pos? fail)
+      (System/exit fail)
+      (System/exit 0))))
+
+


make sure lengths are int's before trying to format

--- src/metabase/driver/generic_sql/sync.clj
+++ src/metabase/driver/generic_sql/sync.clj
@@ -260,7 +260,8 @@
     (let [cardinality (-> korma-table
                           (select (aggregate (count (sqlfn :DISTINCT (keyword field-name))) :count))
                           first
-                          :count)]
+                          :count
+                          int)]
       (when (< cardinality low-cardinality-threshold)
         (log/info (format "Field '%s.%s' has %d unique values. Marking it as a category." (:table korma-table) field-name cardinality))
         (upd Field field-id :special_type :category)))))
@@ -276,22 +277,23 @@
   "Return the average length of FIELD."
   {:arglists '([korma-table field])}
   [korma-table {field-name :name}]
-  (if *sql-string-length-fn*
-    ;; If *sql-string-length-fn* is bound we can use just return AVG(LENGTH-FN(field))
-    (-> korma-table
-        (select (aggregate (avg (sqlfn* *sql-string-length-fn* (keyword field-name))) :len))
-        first
-        :len)
-    ;; Otherwise we'll have to select *all* values of the Field and sum their counts in Clojure-land
-    (do (log/warn (format "WARNING: *sql-string-length-fn* is not bound for the %s driver. We cannot efficiently determine the average length of text fields."
-                          (-> korma-table :db :options :subprotocol)))
-        (let [values (select korma-table (fields [(keyword field-name) :value]))]
-          (if-not (seq values) 0
-                  (let [length-sum (->> values
-                                        (map :value)
-                                        (map count)
-                                        (reduce +))]
-                    (int (math/round (/ length-sum (count values))))))))))
+  {:post [(integer? %)]}
+  (int (if *sql-string-length-fn*
+         ;; If *sql-string-length-fn* is bound we can use just return AVG(LENGTH-FN(field))
+         (-> korma-table
+             (select (aggregate (avg (sqlfn* *sql-string-length-fn* (keyword field-name))) :len))
+             first
+             :len)
+         ;; Otherwise we'll have to select *all* values of the Field and sum their counts in Clojure-land
+         (do (log/warn (format "WARNING: *sql-string-length-fn* is not bound for the %s driver. We cannot efficiently determine the average length of text fields."
+                               (-> korma-table :db :options :subprotocol)))
+             (let [values (select korma-table (fields [(keyword field-name) :value]))]
+               (if-not (seq values) 0
+                       (let [length-sum (->> values
+                                             (map :value)
+                                             (map count)
+                                             (reduce +))]
+                         (math/round (/ length-sum (count values))))))))))

 (defn- check-for-large-average-length
   "Check a Field to see if it has a large average length and should be marked as `preview_display = false`.


update last-login event listener to use the new `events-init` bootstrapping pattern.

--- src/metabase/events/last_login.clj
+++ src/metabase/events/last_login.clj
@@ -38,7 +38,7 @@
 ;;; ## ---------------------------------------- LIFECYLE ----------------------------------------

-;; this is what actually kicks off our listener for events
-(when (config/is-dev?)
-  (log/info "Starting last-login events listener")
-  (events/start-event-listener last-login-topics last-login-channel process-last-login-event))
+(defn events-init []
+  (when-not (config/is-test?)
+    (log/info "Starting last-login events listener")
+    (events/start-event-listener last-login-topics last-login-channel process-last-login-event)))


Problem 0035

Problem 0035

error: pathspec 'src/project_euler/problem_0035.clj' did not match any file(s) known to git

--- src/project_euler/problem_0035.clj
+++ src/project_euler/problem_0035.clj
@@ -0,0 +1,58 @@
+(ns project-euler.problem_0035)
+
+;; The number, 197, is called a circular prime because all rotations of the digits:
+;; 197, 971, and 719, are themselves prime.
+
+;; There are thirteen such primes below 100:
+;; 2, 3, 5, 7, 11, 13, 17, 31, 37, 71, 73, 79, and 97.
+
+;; How many circular primes are there below one million?
+
+;; from problem 0007 ----------------------------------
+;;....................................................
+
+(defn prime?
+  [n]
+  {:pre [(integer? n) (> n 0)]}
+  (or (== 2 n)
+      (let [mmax (+ (Math/sqrt n) 1)]
+        (not (some #(== 0 (rem n %)) (concat [2] (range 3 mmax 2))))
+        )))
+
+;;....................................................................
+
+(defn higher-10-pow
+  [n]
+  (loop [n n, p 10]
+    (let [q (quot n 10)]
+      (if (== 0 q)
+        p
+        (recur q (* p 10))))))
+
+(defn rotations
+  [n]
+  (let [p (higher-10-pow n)]
+    (for [d (iterate #(* % 10) 1)
+          :while (< d p)]
+      (+ (quot n d) (* (/ p d) (rem n d)))
+      )
+    )
+  )
+
+(defn solution []
+  (->> (cons 2 (range 3 1000000))
+       (reduce (fn [circ-prime-set n]
+                 (if (get circ-prime-set n)
+                   circ-prime-set
+                   (let [ns (rotations n)]
+                     (if (every? prime? ns)
+                       (apply conj circ-prime-set ns)
+                       circ-prime-set))))
+               #{})
+       (count)
+       ))
+
+(solution)
+
+;;-> 55
+


more Capitalize Words

more Capitalize Words

Clojure


Keep mounted routes in alphabetical order

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/turbovote-http-api.git/'


expand :cljsbuild prefs (wip)

expand :cljsbuild prefs (wip)

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/michaelsbradleyjr/ply.git/'


Updating core to 2.3.3. Fixs #19.

Updating core to 2.3.3. Fixs #19.


Adds ring-core and clout

Adds ring-core and clout

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/govindkrjoshi/minesweeper.git/'


Add re-frisk dependency to assist development

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/Reefersleep/sleepydo.git/'


Version 1.15.4

Version 1.15.4


sets min lean version

sets min lean version

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/physion/ovation-webapi.git/'


added logic for determining local/ global group size for GEMV

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/ddosic/neanderthal-clblast.git/'


adapt dropdown form field to new data structure


add order processing logic

add order processing logic


[WM] put ovr instructions under registration key

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/election-authority-works.git/'


[WM] add a docstring in export ns

[WM] add a docstring in export ns


a sprite construction macro

a sprite construction macro

error: pathspec 'src/splash/macros.clj' did not match any file(s) known to git

--- src/splash/macros.clj
+++ src/splash/macros.clj
@@ -0,0 +1,14 @@
+(ns splash.macros)
+
+;(def ^:dynamic *canvas* nil)
+;(def ^:dynamic *layer* nil)
+
+(defmacro ignore [& body]
+  '())
+
+
+(defmacro with-sprite [canvas layer [symb bind] & body]
+  `(let [~symb ~bind]
+     (.addChild (-> ~canvas :layer ~layer) ~symb)
+     (do ~@body)
+     (.removeChild (-> ~canvas :layer ~layer) ~symb)))


Beginnings of real computer generation (WIP)

Main entity with registers and stuff working
Control unit has states, but no transitions or decode logic yet

error: pathspec 'src/computer_build.clj' did not match any file(s) known to git

--- src/computer_build.clj
+++ src/computer_build.clj
@@ -0,0 +1,159 @@
+(ns computer-build
+  (:use computer-build.vhdl computer-build.state-machine clojure.set))
+
+(defmacro build [cpuname & instructions]
+  `(build* ~cpuname (quote ~instructions)))
+
+(defn rd [port]
+  (keyword (str "rd_" (name port))))
+
+(defn wr [port]
+  (keyword (str "wr_" (name port))))
+
+(def static-states {
+  :fetch {:control-signals '(:rd_pc, :wr_addr), :next :store_instruction}
+  :store_instruction {:control-signals '(:rd_ram, :wr_ir), :next :decode}
+  ;:decode {:control-signals '(:rd_ir)}
+})
+
+(defn flatten-1 [things]
+  (if (empty? things)
+    '()
+    (if (list? (first things))
+      (concat (first things) (flatten-1 (rest things)))
+      (cons (first things) (flatten-1 (rest things))))))
+
+(defn mapmap [f m]
+  "Replace all values in map m with the result of calling
+  f with the value"
+  (zipmap (keys m) (map f (vals m))))
+
+(defn rtl-to-microcode [[target _ source]]
+  (cond
+    (number? source) ; constant-to-register
+    {:control-signals (list (wr target)),
+     :constant-value source}
+
+    (symbol? source) ; register-to-register
+    {:control-signals (list (rd source) (wr target))}
+
+    (and (seq? source) (symbol? (first source))) ; ALU-to-register
+    (let [[alu_op operand_a operand_b] source]
+      (list
+        {:control-signals (list (rd operand_a) (wr :alu_a)) :alu_op alu_op}
+        (if (= 3 (count source))
+          (if (number? operand_b)
+            {:control-signals (list (wr :alu_b)) :alu_op alu_op :constant-value operand_b}
+            {:control-signals (list (rd operand_b) (wr :alu_b)) :alu_op alu_op}))
+        {:control-signals (list :rd_alu (wr target)) :alu_op alu_op}))))
+
+
+(defn make-states-for-instruction [[_ instruction-name & RTLs]]
+  (let [microcode (flatten-1 (map rtl-to-microcode RTLs))
+        make-state (fn [[body index]]
+                     {(keyword (str instruction-name "_" index))
+                      (merge {:next (if (= index (- (count microcode) 1)) :fetch (keyword (str instruction-name "_" (+ index 1))))} body)})]
+    (apply merge (map make-state (partition 2 (interleave microcode (range 0 (count microcode))))))))
+
+(defn make-states [instructions]
+  "Given a set of instructions, create the set of states
+  necessary to execute their microcode"
+  (apply merge (map make-states-for-instruction instructions)))
+
+(defn make-opcodes [instructions]
+  "Given a set of instructions, assign opcodes to each one in
+  a map with keys being instruction names"
+  (let [names (map #(nth % 1) instructions)
+        width (Math/ceil (/ (Math/log (count names)) (Math/log 2)))
+        to-binary (fn [n] (let [raw (Integer/toString n 2)]
+                            (str (apply str (repeat (- width (count raw)) "0")) raw)))
+    op-values (map to-binary (range (count names)))]
+    (zipmap names op-values)))
+
+(defn control-unit [instructions]
+  "Given a set of states, make a control unit that will
+  execute them"
+  (let [states (make-states instructions)
+        control-signals (set (apply concat (map (fn [[_ body]] (:control-signals body)) states)))
+        opcodes (make-opcodes instructions)]
+    (defn realize-state [state]
+      (let [highs (:control-signals state)]
+        (vec (concat (map #(list 'high %) highs) (map #(list 'low %) (difference control-signals highs))))))
+
+    (state-machine "control_unit"
+                   ; inputs
+                   {:reset std-logic
+                    :bus_in (std-logic-vector 7 0)
+                    }
+                   ; outputs
+                   (zipmap control-signals (repeat (count control-signals) std-logic))
+                   ; signals
+                   {
+                    :ir (std-logic-vector (- (count (second (first opcodes))) 1) 0)
+                    }
+                   ; reset
+                   (vec (map #(list 'low %) control-signals))
+                   ; states
+                   (mapmap realize-state states)
+                   ; transitions
+                   []
+                   )))
+
+(defn build* [cpuname instructions]
+  (.mkdir (java.io.File. cpuname))
+  (let [states (merge static-states (make-states instructions))]
+    (with-open [main-vhdl (java.io.FileWriter. (str cpuname "/main.vhdl"))]
+      (binding [*out* main-vhdl]
+        (generate-vhdl `(entity "main"
+          ; ports
+          [(:clock :in ~std-logic)]
+          ; defs
+          [(signal :system_bus ~(std-logic-vector 7 0))
+          (signal :alu_op ~(std-logic-vector 2 0))
+          (signal :wr_pc ~std-logic)
+          (signal :rd_pc ~std-logic)
+          (signal :wr_ir ~std-logic)
+          (signal :rd_ir ~std-logic)
+          (signal :wr_addr ~std-logic)
+          (signal :wr_ram ~std-logic)
+          (signal :rd_ram ~std-logic)
+          (signal :wr_A ~std-logic)
+          (signal :rd_A ~std-logic)
+          (signal :wr_B ~std-logic)
+          (signal :rd_B ~std-logic)
+          (signal :wr_alu_a ~std-logic)
+          (signal :wr_alu_b ~std-logic)
+          (signal :rd_alu ~std-logic)
+
+          (component :reg
+            (:clock :in ~std-logic)
+            (:data_in :in ~(std-logic-vector 7 0))
+            (:data_out :out ~(std-logic-vector 7 0))
+            (:wr :in ~std-logic)
+            (:rd :in ~std-logic))
+
+          (component :ram
+            (:clock :in ~std-logic)
+            (:data_in :in ~(std-logic-vector 7 0))
+            (:data_out :out ~(std-logic-vector 7 0))
+            (:address :out ~(std-logic-vector 3 0))
+            (:wr :in ~std-logic)
+            (:rd :in ~std-logic))
+
+            (component :alu
+              (:clock :in ~std-logic)
+              (:data_in :in ~(std-logic-vector 7 0))
+              (:data_out :out ~(std-logic-vector 7 0))
+              (:op :in ~(std-logic-vector 2 0))
+              (:wr_a :in ~std-logic)
+              (:wr_b :in ~std-logic)
+              (:rd :in ~std-logic))
+            ]
+          ; architecture
+          [
+          (instance :reg "pc" :clock :system_bus :system_bus :wr_pc :rd_pc)   ; program counter
+          (instance :reg "ir" :clock :system_bus :system_bus :wr_ir :rd_ir)   ; instruction register
+          (instance :reg "A" :clock :system_bus :system_bus :wr_A :rd_A)      ; accumulator
+          (instance :ram "main_memory" :clock :system_bus :system_bus :system_bus :wr_ram :wr_addr :rd_ram)
+          (instance :alu "alu" :clock :system_bus :system_bus :alu_op :wr_alu_a :wr_alu_b :rd_alu)
+          ]))))))


pom middleware

pom middleware

error: pathspec 'src/tailrecursion/boot/middleware/pom.clj' did not match any file(s) known to git

--- src/tailrecursion/boot/middleware/pom.clj
+++ src/tailrecursion/boot/middleware/pom.clj
@@ -0,0 +1,68 @@
+(ns tailrecursion.boot.middleware.pom
+  (:require
+   [tailrecursion.boot.tmpregistry :refer [mk mkdir exists? unmk]]
+   [clojure.java.io :as io])
+  (:import
+   [org.apache.maven.model Model Repository Dependency Exclusion]
+   org.apache.maven.model.io.xpp3.MavenXpp3Writer))
+
+(defn contains-every? [coll ks]
+  (every? identity (map contains? (repeat coll) ks)))
+
+(defmacro with-doseq [obj seq-exprs & body]
+  `(let [o# ~obj]
+     (doseq ~seq-exprs
+       (doto o# ~@body))
+     o#))
+
+(defn ^Model set-repositories! [^Model model repositories]
+  (with-doseq model [repo repositories]
+    (.addRepository (doto (Repository.) (.setUrl repo)))))
+
+(defn extract-ids [sym]
+  (let [[group artifact] ((juxt namespace name) sym)]
+    [(or group artifact) artifact]))
+
+(defn ^Model set-dependencies! [^Model model dependencies]
+  (with-doseq model
+    [[project version & {:keys [exclusions]}] (keys dependencies)
+     :let [[group artifact] (extract-ids project)]]
+    (.addDependency (doto (Dependency.)
+                      (.setGroupId group)
+                      (.setArtifactId artifact)
+                      (.setVersion version)
+                      (.setExclusions
+                       (for [e exclusions :let [[group artifact] (extract-ids (first e))]]
+                         (doto (Exclusion.) (.setGroupId group) (.setArtifactId artifact))))))))
+
+(defn ^Model build-model [boot pom]
+  {:pre [(contains-every? pom [:project :version])]}
+  (let [{:keys [repositories dependencies directories]} boot
+        {:keys [project version description]} pom
+        [group artifact] (extract-ids project)]
+    (doto (Model.)
+      (.setGroupId group)
+      (.setArtifactId artifact)
+      (.setVersion version)
+      (set-repositories! repositories)
+      (set-dependencies! dependencies))))
+
+(defn pom [handler & pom-opts]
+  (fn [request]
+    (let [{:keys [boot pom]} (update-in request [:pom] merge (apply hash-map pom-opts))]
+      (handler (if pom
+                 (let [model (build-model boot pom)]
+                   (update-in request [:pom] merge
+                     {:model model
+                      :pom.xml (with-out-str (.write (MavenXpp3Writer.) *out* model))}))
+                 request)))))
+
+(comment
+  (def req
+    {:boot {:repositories #{"http://foo.com/repo/"}
+            :dependencies '{[alandipert/interpol8 "0.0.3" :exclusions [[org.clojure/clojure]]] nil}}
+     :pom {:project 'foo/bar
+           :version "1.0.0"}})
+
+  (println (get-in ((pom identity) req) [:pom :pom.xml]))
+  )


Make tests count from 1 1

Make tests count from 1 1

find-symbol, and thus extract-definition expects counting from line 1
column 1.  The tests now reflect this usage.

--- test/refactor_nrepl/extract_definition_test.clj
+++ test/refactor_nrepl/extract_definition_test.clj
@@ -15,7 +15,7 @@
           [:definition :definition]))

 (deftest extracts-private-function-definitition-with-docstring-and-meta
-  (is (= (-extract-definition "private-function-definition-with-docstring-and-meta" 29 42)
+  (is (= (-extract-definition "private-function-definition-with-docstring-and-meta" 29 43)
          "(fn
   \"docstring\"
   [foo]
@@ -25,7 +25,7 @@
     :return))")))

 (deftest extracts-private-function-definitition-with-docstring-no-meta
-  (is (= (-extract-definition "private-function-definition-with-docstring-no-meta" 30 37)
+  (is (= (-extract-definition "private-function-definition-with-docstring-no-meta" 30 38)
          "(fn
   \"docstring\"
   [foo]
@@ -34,7 +34,7 @@
     :value))")))

 (deftest extracts-private-function-definitition-without-docstring-and-meta
-  (is (= (-extract-definition "private-function-definition-witout-docstring-and-meta" 31 37)
+  (is (= (-extract-definition "private-function-definition-witout-docstring-and-meta" 31 38)
          "(fn
   [foo]
   (do
@@ -42,33 +42,33 @@
     :val))")))

 (deftest extracts-private-var-no-docstring
-  (is (= (-extract-definition "private-var-no-docstring" 34 2)
+  (is (= (-extract-definition "private-var-no-docstring" 34 3)
          ":value")))

 (deftest extracts-private-var-no-docstring-no-value
-  (is (= (-extract-definition "private-var-no-docstring-no-value" 35 2)
+  (is (= (-extract-definition "private-var-no-docstring-no-value" 35 3)
          "")))

 (deftest extracts-private-var-with-docstring
-  (is (= (-extract-definition "private-var-with-docstring" 36 2)
+  (is (= (-extract-definition "private-var-with-docstring" 36 3)
          ":value")))

 (deftest extracts-var-with-docstringand-value
-  (is (= (-extract-definition "var-with-docstring-and-value" 37 2)
+  (is (= (-extract-definition "var-with-docstring-and-value" 37 3)
          ":value")))

 (deftest extracts-let-bound
-  (is (= (-extract-definition "let-bound" 42 13)
+  (is (= (-extract-definition "let-bound" 42 14)
          "(+ 1 2)")))

 (deftest extracts-let-bound-multi-line
-  (is (= (-extract-definition "let-bound-multi-line" 42 28)
+  (is (= (-extract-definition "let-bound-multi-line" 42 29)
          "(+ 1 (* 3 2)
                                 (- 77 32) ; eol comment
                                 (/ 9 3))")))

 (deftest extracts-if-let-bound
-  (is (= (-extract-definition "if-let-bound" 44 13)
+  (is (= (-extract-definition "if-let-bound" 44 14)
          "(+ 11 17)")))

 (deftest returns-meta-data
@@ -76,7 +76,7 @@
              {:file (.getAbsolutePath (io/file "test/resources/extract_definition.clj"))
               :ns "resources.extract-definition"
               :line 44
-              :column 13
+              :column 14
               :name "if-let-bound"
               :dir "."})]
     (is (= (count (:occurrences res)) 1))
@@ -94,5 +94,5 @@
   :value)")))

 (deftest extracts-single-char-sym
-  (is (= (-extract-definition "a" 52 7)
+  (is (= (-extract-definition "a" 52 8)
          "1")))


no debug

no debug

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/phperret/cjone-todomvc.git/'


[EN] Use defonce for channels.

[EN] Use defonce for channels.


Added chebi drug bank id mappings rule

Added chebi drug bank id mappings rule

error: pathspec 'kabob-build/src/main/resources/edu/ucdenver/ccp/kabob/build/rules/id_mapping/skos_exact/chebi/chebi_drugbank_idmappings.clj' did not match any file(s) known to git

--- kabob-build/src/main/resources/edu/ucdenver/ccp/kabob/build/rules/id_mapping/skos_exact/chebi/chebi_drugbank_idmappings.clj
+++ kabob-build/src/main/resources/edu/ucdenver/ccp/kabob/build/rules/id_mapping/skos_exact/chebi/chebi_drugbank_idmappings.clj
@@ -0,0 +1,20 @@
+;; -------------------------------------------
+;; --------- chebi drugbank id mappings ---------
+;; -------------------------------------------
+;; create chemical id to drugbank id to mappings
+`{:name "chebi-drugbank-idmappings"
+  :head ((?/chebi_id skos/exactMatch ?/db_id))
+  :reify ([?/db_id {:ln (:localname ?/drug_bank_id)
+                  :ns "ccp" :prefix "DRUGBANK_" :suffix ""}])
+  :sparql-string "prefix obo: <http://purl.obolibrary.org/obo/>
+                  prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                  prefix ccp: <http://ccp.ucdenver.edu/obo/ext/>
+                  prefix oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>
+                  select ?chebi_id ?xref ?drug_bank_id {
+                  ?chebi_id rdf:type ccp:IAO_EXT_0000198 .
+                  ?chebi_id obo:IAO_0000219 ?chebi_class .
+                  ?chebi_class oboInOwl:hasDbXref ?xref .
+                  filter regex(?xref, '^DrugBank:') .
+                  bind (strafter(?xref, 'DrugBank:') as ?drug_bank_id)
+                  }"
+  }


comments

comments

--- cljs-cheatsheet/cljs_cheatsheet/html.cljs
+++ cljs-cheatsheet/cljs_cheatsheet/html.cljs
@@ -35,8 +35,7 @@
     uri-encode))

 (defn- docs-href [nme nme-space]
-
-  ;; TEMPORARY UNTIL SYMBOL TOOLTIPS ARE LIVE
+  ;; NOTE: this is temporary until we can link to docs on cljs.info
   (let [n2 (replace nme-space cljs-core-ns "clojure.core")]

     (str "http://clojuredocs.org/"


update input field for numbers

update input field for numbers

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/starcity-properties/odin.git/'


begin ch. 6

begin ch. 6

fatal: unable to access 'https://github.com/aamedina/gltut.git/': The requested URL returned error: 403


Fixed merge conflict.

Fixed merge conflict.

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/couragelabs/coachbot.git/'


Sql for rss reader bugfix

Sql for rss reader bugfix

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/m1dnight/a-slack-and-irc-bot.git/'


set boolean return type hints via reader conditional

--- src/datascript/core.cljc
+++ src/datascript/core.cljc
@@ -30,8 +30,7 @@
    (do
      (def Exception js/Error)
      (def IllegalArgumentException js/Error)
-     (def UnsupportedOperationException js/Error)
-     (def Boolean boolean)))
+     (def UnsupportedOperationException js/Error)))

 (def ^:const tx0 0x20000000)

@@ -582,16 +581,20 @@

 (defrecord TxReport [db-before db-after tx-data tempids tx-meta])

-(defn ^Boolean is-attr? [db attr property]
+(defn #?@(:clj  [^Boolean is-attr?]
+          :cljs [^boolean is-attr?]) [db attr property]
   (contains? (-attrs-by db property) attr))

-(defn ^Boolean multival? [db attr]
+(defn #?@(:clj  [^Boolean multival?]
+          :cljs [^boolean multival?]) [db attr]
   (is-attr? db attr :db.cardinality/many))

-(defn ^Boolean ref? [db attr]
+(defn #?@(:clj  [^Boolean ref?]
+          :cljs [^boolean ref?]) [db attr]
   (is-attr? db attr :db.type/ref))

-(defn ^Boolean component? [db attr]
+(defn #?@(:clj  [^Boolean component?]
+          :cljs [^boolean component?]) [db attr]
   (is-attr? db attr :db/isComponent))

 (defn entid [db eid]
@@ -669,7 +672,8 @@
       (assoc-in [:tempids e] eid)
       (update-in [:db-after] advance-max-eid eid))))

-(defn- ^Boolean tx-id? [e]
+(defn- #?@(:clj  [^Boolean tx-id?]
+           :cljs [^boolean tx-id?]) [e]
   (or (= e :db/current-tx)
       (= e ":db/current-tx"))) ;; for datascript.js interop

@@ -695,7 +699,8 @@
       (update-in [:db-after] with-datom datom)
       (update-in [:tx-data] conj datom)))

-(defn ^Boolean reverse-ref? [attr]
+(defn #?@(:clj  [^Boolean reverse-ref?]
+          :cljs [^boolean reverse-ref?]) [attr]
   (cond
     (keyword? attr)
     (= "_" (nth (name attr) 0))


Create inference.clj

Create inference.clj

error: RPC failed; HTTP 403 curl 22 The requested URL returned error: 403
fatal: the remote end hung up unexpectedly


Created limelight leiningen plugin

Created limelight leiningen plugin

error: pathspec 'clojure/src/leiningen/limelight.clj' did not match any file(s) known to git

--- clojure/src/leiningen/limelight.clj
+++ clojure/src/leiningen/limelight.clj
@@ -0,0 +1,33 @@
+(ns leiningen.limelight
+  (:use
+    [leiningen.classpath :only [get-classpath-string]])
+  (:import
+    [java.io BufferedInputStream]))
+
+(defn- copy-bytes [in out]
+  (with-open [input in]
+    (loop [b (.read input)]
+      (when (not (= -1 b))
+        (.write out b)
+        (recur (.read input))))))
+
+(defn- java [jvm-args main-class args]
+  (let [java-exe (str (System/getProperty "java.home") "/bin/java")
+        command (into-array (concat [java-exe] jvm-args [main-class] args))
+        process (.exec (Runtime/getRuntime) command)
+        output (BufferedInputStream. (.getInputStream process))
+        output-thread (Thread. #(copy-bytes output System/out))
+        error (BufferedInputStream. (.getErrorStream process))
+        error-thread (Thread. #(copy-bytes error System/err))]
+    (.start output-thread)
+    (.start error-thread)
+    (.waitFor process)
+    (.join output-thread 1000)
+    (.join error-thread 1000)
+    (.exitValue process)))
+
+(defn limelight [project & args]
+  "A proxy to the Limelight jar"
+  (let [classpath (get-classpath-string project)
+        jvm-args ["-cp" classpath]]
+    (java jvm-args "limelight.CmdLineMain" args)))


Convert the message to edn rather than mucking about with get-in-json

remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/democracyworks/turbovote-http-api.git/'


Updated influxdb plugin

Updated influxdb plugin

--- src/riemann/influxdb.clj
+++ src/riemann/influxdb.clj
@@ -1,35 +1,43 @@
 (ns riemann.influxdb
   "Forwards events to InfluxDB"
-  (:require [capacitor.core :as influx]))
+  (:require [capacitor.core :as influx])
+  (:use [clojure.string :only [join split]]))

 (defn influxdb
   "Returns a function which accepts an event and sends it to InfluxDB.
   Use:
+
+  ;; For giving series name as the combination of :host and :service separated by dot.

-  (influxdb {:host \"play.influxdb.org\" :port 8086})
+  (influxdb {:host \"play.influxdb.org\" :port 8086 :series \"host.service\"})

   Options:

   :name           Name of the metric which is same as the series name.
-
+
   :db             Name of the DB of InfluxDB to push riemann-events.

   :username       Name of the user who is allowed to push metrics to this DB.

-  :password       Password of the corresponding user."
+  :password       Password of the corresponding user.
+
+  :series         Name of the InfluxDB time-series."
+
   [opts]
   (let [opts (merge {:host "127.0.0.1"
                      :port 8086
                      :scheme "http"
                      :username "root"
                      :password "root"
-                     :db "riemann" } opts)
+                     :db "riemann"
+                     :series "service"} opts)
         client (influx/make-client opts)]
     (fn [event]
-    (when (:metric event)
-      (when (:service event)
-        (when (:host event)
-          (influx/post-points client (:service event) [{ :name (:service event)
-                                                         :host (:host event)
-                                                         :state (:state event)
-                                                         :value (:metric event) }])))))))
+      (let [series (join "." (map (fn [e] (e event)) (vec (map (fn [k] (keyword k)) (split (:series opts) #"\.")))))]
+      (when (:metric event)
+        (when (:service event)
+          (when (:host event)
+            (influx/post-points client series [{ :name (:service event)
+                                                 :host (:host event)
+                                                 :state (:state event)
+                                                 :value (:metric event) }]))))))))


Story ID: RPC-178 Core.clj appeared to be missed

error: pathspec 'src/smooth_test/core.clj' did not match any file(s) known to git

--- src/smooth_test/core.clj
+++ src/smooth_test/core.clj
@@ -0,0 +1,73 @@
+(ns smooth-test.core
+  (:require [clojure.test :refer [do-report test-var *load-tests* *testing-contexts*]]
+            [clojure.string :as s]
+            [smooth-test.provided :as p]
+            [smooth-test.async :as async]
+            )
+  )
+
+(defmacro specification
+  "Defines a specificaiton which is translated into a what a deftest macro produces with report hooks for the
+   description.
+   When *load-tests* is false, specificaiton is ignored."
+  [description & body]
+  (when *load-tests*
+    (let [var-name-from-string (fn [s] (symbol (s/lower-case (s/replace s #"[ ]" "-"))))
+          name (var-name-from-string description)]
+      `(def ~(vary-meta name assoc :test `(fn []
+                                            (do-report {:type :begin-specification :string ~description})
+                                            ~@body
+                                            (do-report {:type :end-specification :string ~description})
+                                            ))
+         (fn []
+           (test-var (var ~name)))))))
+
+(defmacro behavior
+  "Adds a new string to the list of testing contexts.  May be nested,
+   but must occur inside a test function (deftest)."
+  [string & body]
+  `(binding [*testing-contexts* (conj *testing-contexts* ~string)]
+     (do-report {:type :begin-behavior :string ~string})
+     ~@body
+     (do-report {:type :end-behavior :string ~string}))
+  )
+
+(defmacro with-timeline
+  "Adds the infrastructure required for doing timeline testing"
+  [& forms]
+  `(let [~'*async-queue* (async/make-async-queue)]
+     ~@forms
+     )
+  )
+
+
+(defmacro event
+  "Adds an event to the event queue with the specified time and callback function.
+Must be wrapped by with-timeline.
+"
+  [tm cb]
+  `(async/schedule-event ~'*async-queue* ~tm (fn [] ~cb))
+  )
+
+(defmacro tick
+  "Advances the timer by the specified number of ticks.
+   Must be wrapped by with-timeline."
+  [tm]
+  `(async/advance-clock ~'*async-queue* ~tm)
+  )
+
+(defmacro provided
+  "A macro for using a Midje-style provided clause within any testing framework. This macro rewrites
+  assertion-style mocking statements into code that can do that mocking.
+  "
+  [& forms]
+  (apply p/provided-fn forms))
+
+(defmacro assertions [descr & forms]
+  (let [triples (partition 3 forms)
+        asserts (map (fn [[actual _ expected]] (list 'is (list '= actual expected) (str "ASSERTION: " actual " => " expected))) triples)
+        ]
+    `(~'behavior ~descr
+       ~@asserts
+       ))
+  )


Added migration for table EVENT_SESSIONS. #40.

fatal: unable to access 'https://github.com/RuuviTracker/ruuvitracker_server.git/': The requested URL returned error: 403


Send events to Logstash, even if they don't have metrics

fatal: unable to access 'https://github.com/bowlofstew/riemann.git/': The requested URL returned error: 403