Skip to content

Instantly share code, notes, and snippets.

@ohpauleez
Created March 1, 2011 06:57
Show Gist options
  • Save ohpauleez/848741 to your computer and use it in GitHub Desktop.
Save ohpauleez/848741 to your computer and use it in GitHub Desktop.
(ns clopi.core
(:import (java.util.zip GZIPInputStream)
(java.io StringReader)))
(def *feed-archive-url* "http://clojars.org/repo/feed.clj.gz")
(defn gunzip
"Unzip a gzip archive into an input stream"
[archive]
(GZIPInputStream. (clojure.java.io/input-stream archive)))
(defn istream->urls
"Resolve the feed input stream lazily, generating a set of all the URLS"
[istream]
(let [rdr (clojure.java.io/reader istream)]
(reduce (fn [url-set line]
(let [jar-map (read-string line)]
(conj url-set (get jar-map :url "")))) #{} (line-seq rdr))))
(defn project->map
"Process a project.clj, generating a map of the data"
[project-str]
(if (< 1 (count project-str))
(let [project-map-str (-> project-str
(.replace "(" "")
(.replace ")" "")
(.replaceFirst "defproject" "{")
(str "}"))]
(read-string project-map-str))
{}))
(defn fetch-url
"Fetch the dependencies and dev-dependencies of a project.clj url"
[url]
(let [rdr (try
(clojure.java.io/reader url)
(catch Exception e (clojure.java.io/reader (StringReader. ""))))
proj-map (try
(project->map (apply str (line-seq rdr)))
(catch Exception e {}))]
(select-keys proj-map [:dependencies :dev-dependencies])))
(defn fetch-github
"Fetch the dependencies and dev-dependencies of a github host project"
[url]
(try
(fetch-url (.replaceFirst (str url "/raw/master/project.clj") "http:" "https:"))
(catch Exception e {})))
(defn count-dep-vec
[dep-vector stats-map-start]
(reduce (fn [stats-map [proj-index version-str]]
(let [proj-index (str proj-index)]
(update-in stats-map [proj-index version-str] (fnil inc 0))))
stats-map-start dep-vector))
(defn count-deps
"Create a map of all artifacts, and how many times someone has a dependency on a specific version"
[deps]
(reduce (fn [stats-map dep-map]
(try
(count-dep-vec (into (get dep-map :dependencies [])
(get dep-map :dev-dependencies [])) stats-map)
(catch Exception e (do (println dep-map) stats-map))))
(sorted-map) deps))
(ns clopi.github
(:require [clj-github.repos :as github]))
;; this needs to be way smarter about finding the end page, and about when to rate-limit/sleep
(defn clojure-repos
""
[]
(let [auth {:user "OhPauleez" :token "XXXXXXXXXXXXXXXXXXXXXXXXX"}]
(reduce (fn [res-vec page]
(into res-vec (do (Thread/sleep 1000) (github/search-repos auth "clojure" :language "Clojure" :start-page page)))) [] (range 1 50))))
(defn results->urls
"Take a search results vector, and return all the urls"
[results]
(into #{} (map #(get %1 :url "") results)))
@ohpauleez
Copy link
Author

There are 1411 repos on github that are identified as Clojure and have something related to "clojure" in them.
This is the dependency info for all of them that have :url/raw/master/project.clj"

{"aleph" {"0.1.5-SNAPSHOT" 1, "0.1.1-SNAPSHOT" 1, "0.1.0-SNAPSHOT" 2},
"am.ik/clj-gae-ds" {"0.2.1" 1},
"am.ik/clj-gae-testing" {"0.2.0-SNAPSHOT" 1},
"amontillado" {"1.0.0-SNAPSHOT" 1},
"ant/ant" {"1.6.5" 3},
"ant/ant-launcher" {"1.6.2" 2, "1.6.5" 3},
"antlr/stringtemplate" {"2.2" 1},
"appengine" {"0.3-SNAPSHOT" 1, "0.2" 1, "0.4.3-SNAPSHOT" 2, "0.1" 1, "0.4-SNAPSHOT" 1},
"appengine-magic" {"0.3.0-SNAPSHOT" 3, "0.3.2" 1},
"autodoc" {"0.7.1-SNAPSHOT" 1, "0.7.1" 15, "0.8.0-SNAPSHOT" 1, "0.7.0" 22},
"berkeleydb/je" {"3.2.76" 1},
"byte-spec" {"0.1" 1},
"cake-autodoc" {"0.0.1-SNAPSHOT" 4},
"calx/javacl" {"1.0.4b" 1},
"cantor" {"0.2.1" 1},
"cascading" {"1.0.17-SNAPSHOT" 1},
"cascading-clojure" {"1.0.0-SNAPSHOT" 1},
"cdt" {"1.0.1-SNAPSHOT" 1, "1.2.4" 1},
"ch.qos.logback/logback-classic" {"0.9.21" 1},
"ch.qos.logback/logback-core" {"0.9.21" 1},
"circumspec" {"0.0.10" 1, "0.0.8" 1, "0.0.13" 1},
"clansi" {"1.1.0-SNAPSHOT" 1},
"clarsec" {"0.0.1-SNAPSHOT" 1},
"classlojure" {"0.5.0-SNAPSHOT" 1},
"clinch/clucy" {"0.1.3" 1},
"clj-config" {"0.1.0-SNAPSHOT" 2},
"clj-extensions" {"1.0.0" 1},
"clj-file-utils" {"0.2.1" 2},
"clj-github" {"1.0.0-SNAPSHOT" 1},
"clj-glob" {"1.0.0" 1},
"clj-html" {"0.1.0" 1},
"clj-http" {"0.1.3" 3, "0.1.2" 6, "0.1.1" 14},
"clj-iterate/clj-iterate" {"0.91" 1},
"clj-json" {"0.3.0-SNAPSHOT" 1, "0.2.0" 3, "0.3.1" 3, "0.2.0-SNAPSHOT" 1},
"clj-json/clj-json" {"0.3.0-SNAPSHOT" 1},
"clj-ldap" {"0.0.2" 1},
"clj-mail" {"0.1.0" 1},
"clj-native" {"0.6.0-SNAPSHOT" 1, "0.9.1-SNAPSHOT" 2},
"clj-native/clj-native" {"0.6.0-SNAPSHOT" 1},
"clj-oauth" {"1.2.1" 1, "1.2.10" 3, "1.2.8" 1},
"clj-piccolo2d" {"0.0.4-SNAPSHOT" 1},
"clj-routing" {"0.1.0-SNAPSHOT" 1},
"clj-serializer" {"0.1.0" 1, "0.1.1" 2},
"clj-ssh" {"0.2.0" 1},
"clj-stacktrace" {"0.1.3" 2, "0.1.2" 1, "0.1.0-SNAPSHOT" 2, "0.2.0" 6},
"clj-stomp" {"0.0.1-SNAPSHOT" 1},
"clj-sys/plumbing" {"0.1.3-SNAPSHOT" 2},
"clj-tagsoup" {"0.1.2" 1},
"clj-text" {"0.0.3" 1},
"clj-time" {"0.2.0-SNAPSHOT" 2, "0.1.0-RC1" 6, "0.1.0-SNAPSHOT" 2, "0.3.0-SNAPSHOT" 5},
"clj-tuio" {"0.0.4-SNAPSHOT" 1},
"clj-unit" {"0.1.0" 1, "0.1.1" 1, "0.1.0-SNAPSHOT" 3},
"clj-yaml" {"0.3.0-SNAPSHOT" 2},
"cljr" {"1.0.0-SNAPSHOT" 1},
"clojail" {"0.3.4-SNAPSHOT" 2},
"clojure" {"1.2.0-master-SNAPSHOT" 1, "1.2.0" 30},
"clojure-contrib" {"1.2.0-SNAPSHOT" 1, "1.2.0" 11},
"clojure-csv" {"1.2.2" 1},
"clojure-csv/clojure-csv" {"1.1.0" 1, "1.0.0" 1},
"clojure-http-client" {"1.0.1" 1, "1.1.0-SNAPSHOT" 4, "1.0.0-SNAPSHOT" 8},
"clojure-nltk" {"0.0.3" 1},
"clojure-protobuf" {"0.3.0-SNAPSHOT" 2, "0.3.4-SNAPSHOT" 1, "0.3.1-SNAPSHOT" 1},
"clojure-refactoring" {"0.5.0" 1},
"clojure-tools" {"1.0.0" 1},
"clojure-twitter" {"1.2.0" 1, "1.2.5" 1, "1.2.3" 2},
"clojure-useful" {"0.3.1" 1, "0.3.0-SNAPSHOT" 2},
"clojure.data.finger-tree" {"0.0.1-SNAPSHOT" 1},
"clojureql" {"1.0.1" 1},
"clojurize-protocol" {"1.0.0-SNAPSHOT" 2},
"clout" {"0.2.0" 1, "0.4.0" 1, "0.3.1" 1, "0.2.0-SNAPSHOT" 1},
"colt/colt" {"1.2.0" 1},
"com.amazonaws/aws-java-sdk" {"1.0.006" 1, "1.0.008" 1},
"com.ashafa/nozzle" {"0.2.1" 1},
"com.asual.lesscss/lesscss-engine" {"1.0.33" 1},
"com.browseengine/bobo-browse" {"2.0.7" 1},
"com.codestuffs.clojure/swank-clojure" {"1.0-SNAPSHOT" 1},
"com.eaio.uuid/uuid" {"3.1" 1},
"com.ericsson.otp/erlang" {"1.5.3" 1},
"com.espertech/esper" {"3.3.0" 1},
"com.explodingpixels/macwidgets" {"0.9.6-SNAPSHOT" 1},
"com.github.febeling/general-hash-functions" {"1.1.0" 1},
"com.google.appengine/appengine-api-1.0-sdk" {"1.3.5" 2, "1.3.4" 2, "1.3.7" 1},
"com.google.appengine/appengine-api-labs" {"1.3.5" 1, "1.4.0" 1, "1.3.4" 2, "1.3.7" 1},
"com.google.appengine/appengine-api-stubs" {"1.3.5" 1, "1.4.0" 1, "1.3.4" 2, "1.3.7" 1},
"com.google.appengine/appengine-local-runtime" {"1.3.5" 1, "1.4.0" 1, "1.3.4" 2, "1.3.7" 1},
"com.google.appengine/appengine-testing" {"1.3.4" 1, "1.3.7" 1},
"com.google.appengine/appengine-tools-api" {"1.3.7" 1},
"com.google.appengine/appengine-tools-sdk" {"1.3.0" 1},
"com.google.code.typica/typica" {"1.7.2" 1, "1.7" 1},
"com.google.collections/google-collections" {"1.0" 1},
"com.google.gdata/gdata-books-1.0" {"1.41.5" 1},
"com.h2database/h2" {"1.2.141" 1, "1.2.147" 3},
"com.hazelcast/hazelcast" {"1.9.1" 1, "1.9" 1},
"com.hp.hpl.jena/arq" {"2.8.3" 1},
"com.hp.hpl.jena/jena" {"2.6.2" 1},
"com.jcraft/jsch" {"0.1.44" 1, "0.1.42" 3},
"com.jmeeks/clj-web-crawler" {"0.1.0-SNAPSHOT" 1},
"com.lispcast/org.apache.commons.lang" {"2.5.0" 1},
"com.lowagie/itext" {"2.0.7" 1},
"com.miglayout/miglayout" {"3.7.3" 1, "3.7.3.1" 1},
"com.mongodb/mongo" {"1.0" 1},
"com.rabbitmq/amqp-client" {"1.8.1" 1, "1.7.2" 3, "2.2.0" 2, "2.0.0" 3},
"com.sleepycat/je" {"4.0.92" 1},
"com.stuartsierra/classpath-manager" {"1.1.0" 1},
"com.stuartsierra/lazytest" {"1.0.2" 1, "1.2.3" 2, "1.0.0-SNAPSHOT" 3, "1.0.0" 1, "2.0.0-SNAPSHOT" 2, "1.1.2" 7},
"com.sun.phobos/tagsoup" {"1.2" 1},
"com.surftools/BeanstalkClient" {"1.0.0-SNAPSHOT" 1},
"com.trottercashion/bert-clj" {"1.0" 1},
"com.twinql.clojure/clj-apache-http" {"2.1.0" 1, "2.3.1" 4, "2.2.0" 3, "2.0.1" 1, "1.0" 1},
"com.unboundid/unboundid-ldapsdk" {"2.0.0" 1},
"commons-cli" {"1.1" 1},
"commons-cli/commons-cli" {"1.2" 2},
"commons-codec" {"1.3" 1, "1.4" 9},
"commons-codec/commons-codec" {"1.4" 3, "1.3" 2},
"commons-daemon" {"1.0.3" 1, "1.0.1" 1},
"commons-dbcp/commons-dbcp" {"1.4" 1},
"commons-el/commons-el" {"1.0" 2},
"commons-fileupload" {"1.2.1" 2},
"commons-httpclient" {"3.1" 1},
"commons-httpclient/commons-httpclient" {"3.0.1" 2},
"commons-io" {"1.2" 1, "1.4" 3},
"commons-io/commons-io" {"2.0" 1, "1.4" 2},
"commons-lang" {"2.5" 1},
"commons-lang/commons-lang" {"2.5" 5, "2.4" 1},
"commons-logging/commons-logging" {"1.1" 2, "1.1.1" 4, "1.0.4" 2},
"commons-logging/commons-logging-api" {"1.0.4" 2},
"commons-net/commons-net" {"2.0" 1, "1.4.1" 2},
"commons-pool/commons-pool" {"1.5.5" 1, "1.5.2" 1},
"commons-vfs" {"1.0" 1},
"compojure" {"0.4.0-RC3" 4, "0.6.0-RC3" 1, "0.6.0-RC4" 3, "0.4.0" 8, "0.4.0-SNAPSHOT" 5, "0.5.0" 1, "0.4.1" 10, "0.3.2" 6, "0.6.0" 3, "0.5.1" 1, "0.5.2" 9, "0.5.3" 12},
"compojure-gae" {"0.3.3" 1},
"conduit-irc" {"1.0.0" 1},
"congomongo" {"0.1.2-SNAPSHOT" 2, "0.1.3-SNAPSHOT" 11},
"conjure-core" {"0.8.0" 1},
"crane" {"1.0-SNAPSHOT" 1},
"crane/lein-crane" {"0.0.1-SNAPSHOT" 1},
"criterium" {"0.0.1-SNAPSHOT" 4},
"crx/crx-rmi" {"1.4.0" 1},
"cupboard" {"1.0-SNAPSHOT" 1},
"deview/lein-deview" {"1.2.0-SNAPSHOT" 1},
"digest" {"1.0.0-SNAPSHOT" 1},
"enlive" {"1.0.0-SNAPSHOT" 30},
"enlive/enlive" {"1.0.0-SNAPSHOT" 1},
"essi-unidata/netcdf-java" {"4.0.41" 1},
"eyewrap" {"0.6.4" 1},
"fastutil/fastutil" {"5.0.9" 1},
"fetcher" {"1.0.0-SNAPSHOT" 1},
"fleet" {"0.9.3" 1},
"fleetdb" {"0.2.0-RC1" 1, "0.3.1" 1},
"fleetdb-client" {"0.2.0-RC1" 1},
"fnparse" {"2.2.6" 1},
"fresh" {"1.0.1" 1},
"fs" {"0.4.0" 1},
"gaka" {"0.2.0" 1},
"geo" {"0.1" 1},
"gloss" {"0.1.1-SNAPSHOT" 1},
"google-maps" {"0.4.1-SNAPSHOT" 1},
"graft" {"1.0.0-SNAPSHOT" 1},
"hiccup" {"0.3.0" 9, "0.2.1" 3, "0.3.1" 8, "0.4.0-SNAPSHOT" 2, "0.3.2" 1, "0.2.3" 3, "0.2.4" 5, "0.3.4" 2, "0.2.6" 12, "0.2.7" 3},
"hiccup/hiccup" {"0.2.6" 1},
"http.async.client" {"0.2.0" 1, "0.2.1" 1},
"identifiers" {"1.0.0" 1},
"incanter" {"1.2.1-SNAPSHOT" 1, "1.2.3-SNAPSHOT" 2, "1.2.3" 11},
"incanter/incanter" {"1.0-master-SNAPSHOT" 1},
"incanter/incanter-charts" {"1.2.3" 2},
"incanter/incanter-core" {"1.2.3-SNAPSHOT" 2, "1.2.3" 2},
"incanter/incanter-excel" {"1.2.3" 1},
"incanter/incanter-full" {"1.0-master-SNAPSHOT" 1},
"incanter/incanter-io" {"1.2.3" 1},
"incanter/incanter-latex" {"1.2.3" 1},
"incanter/incanter-mongodb" {"1.2.3" 1},
"incanter/incanter-pdf" {"1.2.3" 1},
"incanter/incanter-processing" {"1.2.3" 1},
"incanter/parallelcolt" {"0.9.4" 2},
"infer" {"1.0-SNAPSHOT" 1},
"inflections" {"0.4" 2, "0.3" 1, "0.4-SNAPSHOT" 5},
"irclj" {"0.3.0-SNAPSHOT" 1, "0.4.0-SNAPSHOT" 1},
"java-tuio" {"cvs-SNAPSHOT" 1},
"javax.jcr/jcr" {"1.0" 1},
"javax.mail/mail" {"1.4.1" 1, "1.4.3" 2, "1.4.4" 1, "1.4.4-SNAPSHOT" 1},
"javax.media/jai_core" {"1.1.3" 1},
"javax.portlet/portlet-api" {"2.0" 1},
"javax.servlet/servlet-api" {"2.5" 3},
"jbcrypt" {"0.3" 2},
"jdom/jdom" {"1.1" 1},
"jfugue" {"4.0.3" 1},
"jfugue-movabledo" {"0.0.5" 1},
"jiraph" {"0.1.3-SNAPSHOT" 1},
"jivesoftware/smack" {"3.1.0" 1},
"jline" {"0.9.9" 1, "0.9.94" 27},
"jline/jline" {"0.9.94" 1},
"joda-time" {"1.6.2" 1, "1.6" 12},
"joda-time/joda-time" {"1.6.2" 1},
"junit" {"4.8.2" 1},
"lein-autotest" {"1.1.0" 2},
"lein-clojars" {"0.6.0" 25, "0.5.0-SNAPSHOT" 70, "0.5.0" 32},
"lein-conjure" {"0.8.0" 1},
"lein-daemon" {"0.2.1" 5},
"lein-difftest" {"1.3.1-SNAPSHOT" 1, "1.3.1" 3, "1.3.2-SNAPSHOT" 2, "1.3.0" 2, "1.2.2" 4},
"lein-eclipse" {"1.0.0" 7},
"lein-javac" {"1.2.1-SNAPSHOT" 6, "0.0.1-SNAPSHOT" 1, "0.0.2-SNAPSHOT" 6},
"lein-lazytest" {"1.0.1" 3},
"lein-minicheck" {"0.2.0" 1},
"lein-multi" {"1.0.0" 1},
"lein-nailgun" {"0.1.0" 1, "0.1.0-SNAPSHOT" 1},
"lein-release" {"1.1.1" 1},
"lein-ring" {"0.3.2" 4},
"lein-run" {"1.0.0-SNAPSHOT" 9, "1.0.0" 12, "1.0.1-SNAPSHOT" 2},
"lein-search" {"0.3.3" 1, "0.3.0" 1, "0.3.0-SNAPSHOT" 5},
"lein-swank-clj" {"1.0.0-SNAPSHOT" 1},
"lein-vimclojure-ngserver" {"1.0.0-SNAPSHOT" 1},
"leiningen" {"1.1.0" 1, "1.3.1" 1, "1.0.0" 1},
"leiningen-init-script" {"0.1.0" 1, "1.2.0-SNAPSHOT" 1},
"leiningen-run" {"0.3" 2, "0.2" 2},
"leiningen/lein-swank" {"1.0.0-SNAPSHOT" 1, "1.0.0" 1, "1.1.0" 47, "[1.1.0," 1, "1.2.0-SNAPSHOT" 32},
"leiningen/leiningen" {"1.3.0-SNAPSHOT" 1},
"libthrift" {"917130" 1},
"log4j" {"1.2.16" 2, "1.2.14" 2, "1.2.15" 10},
"log4j/log4j" {"1.2.16" 2, "1.2.14" 6},
"logo" {"1.0.1-SNAPSHOT" 1},
"lt/drmaa" {"ubuntu-version" 1},
"lt/jgdi" {"ubuntu-version" 1},
"lt/juti" {"ubuntu-version" 1},
"marginalia" {"0.2.2" 1, "0.3.0" 1, "0.5.0-alpha" 5, "0.5.0" 2, "0.3.2" 8},
"matchure" {"0.10.1" 1, "0.9.1" 4},
"midje" {"0.6.1" 1, "0.5.0" 2, "1.0.0-COLLECTORS-EDITION" 3, "1.1-alpha-1" 6, "1.0.1" 4},
"minicheck" {"0.2.0" 1},
"mmemail" {"1.0.2" 1},
"mstate" {"0.1.0" 1},
"mycroft/mycroft" {"0.0.2" 1},
"mysql/mysql-connector-java" {"5.1.13" 1, "5.1.12" 1, "5.1.6" 4},
"name.choi.joshua.fnparse" {"2.2.5" 1},
"native-deps" {"1.0.5" 1, "1.0.0" 5, "1.0.4" 4},
"necessary-evil" {"1.1.0-SNAPSHOT" 1},
"net.1978th/tokyocabinet" {"1.23" 1},
"net.cgrand/moustache" {"1.0.0-SNAPSHOT" 10},
"net.defn.ring/ring-jetty-adapter" {"0.2.0" 1},
"net.dnolen.vecmath" {"0.1.0-SNAPSHOT" 1},
"net.intensivesystems/arrows" {"1.2.0" 2},
"net.intensivesystems/conduit" {"0.8.0" 1},
"net.intensivesystems/mini-kanren" {"1.0.0-SNAPSHOT" 1},
"net.java.dev.jets3t/jets3t" {"0.7.3" 1},
"net.java.dev.jna/jna" {"3.2.4" 1},
"net.java.dev.rome/rome-fetcher" {"1.0.0" 1},
"net.javazoom/jlayer" {"1.0.1" 1},
"net.rootdev/java-rdfa" {"0.3" 1},
"net.sf.alxa/jlatexmath" {"0.9.1-SNAPSHOT" 1},
"net.sf.jopt-simple/jopt-simple" {"3.2" 1},
"net.sf.opencsv/opencsv" {"2.0" 1},
"net.sourceforge.htmlunit/htmlunit" {"2.8" 1},
"net.sourceforge.javacsv/javacsv" {"2.0" 1},
"net.sourceforge.jexcelapi/jxl" {"2.6.10" 1},
"net.zemberek/zemberek-cekirdek" {"2.1.1" 1},
"net.zemberek/zemberek-tr" {"2.1.1" 1},
"opendap/opendap" {"2.2" 1},
"opennlp/tools" {"1.5.0" 1},
"org.activiti/activiti-engine" {"5.0" 1},
"org.antlr/antlr" {"3.2" 2},
"org.antlr/stringtemplate" {"3.2" 1},
"org.apache.activemq/activemq-core" {"5.4.0" 1},
"org.apache.activemq/activemq-pool" {"5.4.0" 1},
"org.apache.ant/ant" {"1.8.1" 1},
"org.apache.camel/camel-core" {"2.5.0" 2},
"org.apache.cassandra/apache-cassandra" {"0.6.5" 1},
"org.apache.cassandra/cassandra" {"0.6.0-rc1" 1},
"org.apache.commons.fileupload" {"1.2.1" 1},
"org.apache.commons/commons-math" {"2.0" 1},
"org.apache.derby/derby" {"10.5.3.0_1" 1, "10.6.1.0" 2},
"org.apache.directory.server/apacheds-all" {"1.5.5" 1},
"org.apache.hadoop/avro" {"1.3.3" 1},
"org.apache.httpcomponents/httpclient" {"4.0" 1, "4.1" 2, "4.0.3" 1, "4.0.1" 3, "4.1-alpha1" 1},
"org.apache.httpcomponents/httpcore" {"4.0.1" 1, "4.1" 2},
"org.apache.httpcomponents/httpmime" {"4.0.1" 1, "4.1" 1},
"org.apache.jackrabbit/jackrabbit-jcr-rmi" {"1.4.1" 1},
"org.apache.lucene/lucene-core" {"2.4.1" 1, "3.0.1" 1, "3.0.3" 1, "3.0.2" 2},
"org.apache.lucene/lucene-snowball" {"3.0.3" 1, "3.0.2" 1},
"org.apache.mahout.hadoop/hadoop-core" {"0.20.1" 2},
"org.apache.mahout/mahout-core" {"0.3" 1},
"org.apache.maven.wagon/wagon-file" {"1.0-beta-6" 1},
"org.apache.maven/maven-ant-tasks" {"2.0.10" 3},
"org.apache.maven/maven-artifact-manager" {"2.2.1" 1},
"org.apache.maven/maven-model" {"2.2.1" 1},
"org.apache.maven/maven-project" {"2.2.1" 1},
"org.apache.pdfbox/pdfbox" {"1.4.0" 1},
"org.apache.poi/poi" {"3.7" 1, "3.6" 2},
"org.apache.poi/poi-ooxml" {"3.7" 1, "3.6" 1},
"org.apache.solr/solr-core" {"1.4.0" 1},
"org.apache.solr/solr-solrj" {"1.4.0" 2},
"org.apache.thrift/thrift" {"r917130" 1},
"org.apache.tika/tika-core" {"0.7" 1},
"org.apache.xmlrpc/xmlrpc-client" {"3.1.3" 3},
"org.apache.zookeeper/zookeeper" {"3.3.1" 2},
"org.buntin/compojure" {"0.4.0-SNAPSHOT" 1},
"org.ccil.cowan.tagsoup/tagsoup" {"1.2" 2},
"org.clojars.amit/swarmiji-java" {"0.2.0" 1},
"org.clojars.amit/syslog4j" {"0.9.37" 1},
"org.clojars.ato/clutch" {"0.1.0-SNAPSHOT" 1},
"org.clojars.ato/compojure" {"0.3.1" 2},
"org.clojars.ato/nailgun" {"0.7.1" 2},
"org.clojars.automata/rosado.processing" {"1.1.0" 3},
"org.clojars.bagucode/jna" {"3.2.4" 1},
"org.clojars.brandonw/lein-nailgun" {"1.0.0" 2},
"org.clojars.brenton/difform" {"1.0.1" 1},
"org.clojars.brenton/google-diff-match-patch" {"0.1" 1},
"org.clojars.chapmanb/clucy" {"0.2.0-SNAPSHOT" 1},
"org.clojars.cryptic_star/clj-swingrepl" {"1.0.0-SNAPSHOT" 1},
"org.clojars.cryptic_star/incanter" {"1.2.3-SNAPSHOT" 1},
"org.clojars.ctdean/tokyocabinet" {"1.22.0" 1},
"org.clojars.fyuryu/processing.core" {"1.1.0" 1},
"org.clojars.fyuryu/rosado.processing" {"1.0.7" 1, "1.1.0" 2},
"org.clojars.gilbertl/mongo-java-driver" {"1.0" 1},
"org.clojars.gilbertl/vimclojure" {"2.1.2" 1},
"org.clojars.gjahad/debug-repl" {"0.3.1" 1},
"org.clojars.gw666/sxqj" {"beta2" 1},
"org.clojars.hgavin/clojure-neo4j" {"0.3.0-SNAPSHOT" 1},
"org.clojars.hiredman/fnparse" {"2.2.4" 2},
"org.clojars.hozumi/clj-det-enc" {"1.0.0-SNAPSHOT" 1},
"org.clojars.icylisper/rabbitmq-client" {"1.7.0" 1},
"org.clojars.kjw/commons-httpclient" {"3.1" 1},
"org.clojars.kjw/commons-io" {"1.4" 1},
"org.clojars.kjw/rabbitmq-client" {"1.7.1" 1},
"org.clojars.kjw/solrj" {"1.4.0" 1},
"org.clojars.liebke/compojure" {"0.3.1-master" 2},
"org.clojars.liquidz/simply" {"0.2.1" 1, "0.0.2" 1},
"org.clojars.macourtney/clj-record" {"1.0.1" 1},
"org.clojars.maoe/funky" {"0.0.6" 2},
"org.clojars.mcav/lein-javac" {"1.0.1" 1},
"org.clojars.mcav/pegdown" {"0.8.5.1" 4},
"org.clojars.miau.biz/selenium-server-standalone" {"2.0a2" 1},
"org.clojars.mikejs/clojure-zmq" {"2.0.7-SNAPSHOT" 1},
"org.clojars.mjul/lein-cuke" {"1.1.0" 1},
"org.clojars.mmcgrana/lein-clojars" {"0.5.0" 2},
"org.clojars.mmcgrana/lein-javac" {"1.2.1" 2, "0.1.0" 1},
"org.clojars.mmcgrana/riak-java-pb-client" {"0.1.0-SNAPSHOT" 1},
"org.clojars.mw10013/osc-clj" {"0.3.0-SNAPSHOT" 1},
"org.clojars.nakkaya/markdownj" {"1.0.2b4" 1},
"org.clojars.ninjudd/lazytest" {"1.1.3-SNAPSHOT" 1},
"org.clojars.ninjudd/maven-ant-tasks" {"2.1.0" 1},
"org.clojars.ohpauleez/fnparse" {"3.0.0alpha4" 2},
"org.clojars.pjt/opennlp-tools" {"1.4.3" 1},
"org.clojars.pjt/saxon9" {"9.1.0.8" 1},
"org.clojars.pjt/saxon9-s9api" {"9.1.0.8" 1},
"org.clojars.rayne/autodoc" {"0.8.0-SNAPSHOT" 4},
"org.clojars.rayne/clj-highlight" {"1.1.1-SNAPSHOT" 1},
"org.clojars.rayne/clj-time" {"0.1.1-SNAPSHOT" 1, "0.1.0-SNAPSHOT" 1},
"org.clojars.rosejn/vimclojure" {"2.2.0-SNAPSHOT" 1},
"org.clojars.runa/clj-utils" {"0.2.0" 2},
"org.clojars.runa/medusa" {"0.1.6" 1},
"org.clojars.scottjad/gaka" {"0.2.1" 1},
"org.clojars.scottjad/scriptjure" {"0.1.20" 1},
"org.clojars.sethtrain/postal" {"0.2.0" 2},
"org.clojars.sids/htmlcleaner" {"2.1" 2},
"org.clojars.snuxoll/clojureql" {"1.0.0" 1},
"org.clojars.springify/lein-cuke" {"0.0.2" 1},
"org.clojars.springify/webdriver-clj" {"0.1.0" 1},
"org.clojars.stuarthalloway/compojure" {"0.3.3-SNAPSHOT" 1},
"org.clojars.technomancy/clj-stacktrace" {"0.2.1-SNAPSHOT" 1},
"org.clojars.the-kenny/clojure-couchdb" {"0.2.1" 2},
"org.clojars.thnetos/clj-json" {"0.3.2-SNAPSHOT" 1},
"org.clojars.thnetos/opennlp" {"0.0.3" 1, "0.0.5" 1},
"org.clojars.thnetos/opennlp-tools" {"1.4.3" 1},
"org.clojars.zef/congomongo" {"0.1-zefhemel" 1},
"org.clojars.zef/jopenid" {"1.05" 1},
"org.clojure.contrib/logging" {"1.3.0-alpha1" 1, "1.3.0-SNAPSHOT" 2},
"org.clojure.contrib/macro-utils" {"1.3.0-alpha4" 1},
"org.clojure.contrib/math" {"1.3.0-alpha1" 1},
"org.clojure.contrib/monads" {"1.3.0-SNAPSHOT" 1, "1.3.0-alpha4" 1},
"org.clojure.contrib/standalone" {"1.3.0-alpha3" 1},
"org.clojure/clojure" {"1.3.0-alpha1" 3, "1.1.0-new-SNAPSHOT" 1, "1.2.0-master-20100430.160229-59" 1, "1.3.0-alpha2" 1, "1.3.0-alpha3" 2, "1.1.0-alpha-SNAPSHOT" 23, "1.2.0-RC1" 8, "1.3.0-alpha4" 8, "1.2.0-beta1" 22, "1.2.0-RC2" 6, "1.3.0-alpha5" 1, "1.2.0-RC3" 4, "[1.2.0," 2, "[1.1.0," 1, "1.1.0" 114, "1.2.0" 475, "1.1.0-master-SNAPSHOT" 17, "1.2.0-master-SNAPSHOT" 80, "1.3.0-SNAPSHOT" 1, "1.3.0-master-SNAPSHOT" 3, "[1.1,1.2]" 1},
"org.clojure/clojure-contrib" {"1.1.0-new-SNAPSHOT" 1, "1.2.0-RC1" 8, "1.2.0-beta1" 22, "1.2.0-RC2" 5, "1.2.0-RC3" 4, "1.1.0" 101, "1.2.0" 430, "1.1.0-master-SNAPSHOT" 10, "1.2.0-master-SNAPSHOT" 12, "1.2.0-SNAPSHOT" 59, "1.2.0-20100430.160503-90" 1, "1.0-SNAPSHOT" 40},
"org.clojure/clojure-http-client" {"1.0.0-SNAPSHOT" 1},
"org.clojure/core.unify" {"0.5.0-SNAPSHOT" 1},
"org.clojure/swank-clojure" {"1.0" 7},
"org.cloudhoist/pallet" {"0.4.0-SNAPSHOT" 1},
"org.cloudhoist/pallet-crates-all" {"0.4.0-SNAPSHOT" 1},
"org.cloudhoist/pallet-lein" {"0.2.0" 1},
"org.codehaus.jackson/jackson-core-lgpl" {"1.5.2" 1},
"org.danlarkin/clojure-json" {"1.2-SNAPSHOT" 4, "1.1-SNAPSHOT" 2, "1.1" 5},
"org.easymock/easymock" {"2.5.1" 1},
"org.eclipse.jetty/jetty-server" {"7.0.0.RC4" 1, "7.2.2.v20101205" 1},
"org.eclipse.jetty/jetty-servlet" {"7.0.0.RC4" 1, "7.2.2.v20101205" 1},
"org.eclipse.jetty/jetty-websocket" {"7.2.2.v20101205" 1},
"org.eclipse/jgit" {"0.10.1" 1},
"org.eclipse/swt-gtk-linux-x86" {"3.5.2" 1},
"org.eclipse/swt-win32-win32-x86" {"3.5.2" 1},
"org.elasticsearch/elasticsearch" {"0.9.0" 1},
"org.enclojure/enclojure-repl" {"1.0" 1},
"org.freehep/freehep-graphicsio-pdf" {"2.1.2-SNAPSHOT" 1},
"org.freehep/freehep-jaida" {"3.3.0-11-SNAPSHOT" 1},
"org.freehep/freehep-jaida-root" {"3.3.0-11-SNAPSHOT" 1},
"org.freehep/jas-plotter" {"2.2.6" 1},
"org.freehep/jas3" {"0.8.3-SNAPSHOT" 1},
"org.freemarker/freemarker" {"2.3.16" 1},
"org.incanter/incanter-full" {"1.2.0-SNAPSHOT" 3},
"org.jboss.netty/netty" {"3.2.0.BETA1" 1, "3.2.1.Final" 1, "3.2.2.Final" 1},
"org.jdom/jdom" {"1.1" 1},
"org.joegallo.robocode/robocode" {"1.7.1.6" 1},
"org.jsoup/jsoup" {"1.4.1" 1},
"org.markdownj/markdownj" {"0.3.0-1.0.2b4" 4},
"org.mockito/mockito-all" {"1.8.4" 1},
"org.mongodb/mongo-java-driver" {"2.3" 2, "2.1" 1},
"org.mortbay.jetty/jetty" {"6.1.15" 1},
"org.mortbay.jetty/jsp-2.1-jetty" {"6.1.15" 1},
"org.mortbay.jetty/jsp-api" {"2.1-6.0.1" 1},
"org.mozilla/juniversalchardet" {"1.0.3" 1},
"org.msgpack/msgpack" {"0.5.1-devel" 1},
"org.neo4j/neo4j" {"1.2" 1},
"org.neo4j/neo4j-index" {"1.2-SNAPSHOT" 1},
"org.neo4j/neo4j-kernel" {"1.2-SNAPSHOT" 1},
"org.neo4j/neo4j-shell" {"1.2-SNAPSHOT" 1},
"org.piccolo2d/piccolo2d-core" {"1.3" 2},
"org.piccolo2d/piccolo2d-extras" {"1.3" 1},
"org.python/jython" {"2.5.1" 1},
"org.rathore.amit/conjure" {nil 1},
"org.seleniumhq.selenium.server/selenium-server" {"1.0.3" 1},
"org.slf4j/jcl-over-slf4j" {"1.6.1" 1},
"org.slf4j/log4j-over-slf4j" {"1.6.1" 1},
"org.slf4j/slf4j-api" {"1.5.2" 1, "1.5.8" 2, "1.6.1" 2},
"org.slf4j/slf4j-log4j12" {"1.5.6" 1, "1.5.2" 1, "1.6.1" 1, "1.5.8" 2},
"org.slf4j/slf4j-nop" {"1.5.5" 1},
"org.slf4j/slf4j-simple" {"1.5.6" 1, "1.5.5" 1},
"org.snmp4j/snmp4j" {"1.11" 1},
"org.springframework.amqp/spring-amqp" {"1.0.0.M2" 1},
"org.springframework.amqp/spring-rabbit" {"1.0.0.M2" 1},
"org.springframework/spring-context" {"3.0.5.RELEASE" 1},
"org.springframework/spring-jms" {"3.0.5.RELEASE" 1},
"org.swinglabs/pdf-renderer" {"1.0.5" 1},
"org.tigris/marc4j" {"2.4" 1},
"org.twitter4j/twitter4j-core" {"2.1.2" 1},
"org.xerial/sqlite-jdbc" {"3.6.7" 1, "3.6.17" 1, "3.6.20.1" 2},
"org.yaml/snakeyaml" {"1.5" 1},
"org.zeromq/zmq" {"2.0.10" 1},
"penumbra" {"0.5.0" 1, "0.6.0-SNAPSHOT" 2},
"plugboard" {"1.3.0" 1},
"postgres-pool" {"1.1.0" 1},
"postgresql" {"8.4-701.jdbc4" 1},
"postgresql/postgresql" {"8.4-701.jdbc4" 5},
"pour" {"0.1.0" 1},
"prolefeed" {"0.1-SNAPSHOT" 2},
"rabbitadmin-clj" {"0.1.0-SNAPSHOT" 1},
"rabbitcj" {"0.1.0-SNAPSHOT" 1},
"rabbitmq-client" {"1.7.0" 1},
"radagast" {"1.0.0" 2},
"redis-clojure" {"1.0.3-SNAPSHOT" 1, "1.0-SNAPSHOT" 1, "1.0.4" 1},
"redis.clients/jedis" {"1.5.0" 1},
"remote-repl" {"0.0.1-SNAPSHOT" 1},
"resrc" {"0.0.2" 1},
"resrc-client" {"0.0.2" 1},
"rhino/js" {"1.7R2" 1},
"ring" {"0.1.1-SNAPSHOT" 1, "0.3.3" 2, "0.3.5" 2, "0.3.0" 1, "0.3.4" 1, "0.2.5" 2},
"ring-json-params" {"0.1.1" 2, "0.1.0" 1, "0.1.3" 1},
"ring-mock" {"0.1.1" 3},
"ring/ring" {"0.3.3" 1, "0.2.2" 2, "0.3.1" 1, "0.2.5" 2, "0.2.0" 2},
"ring/ring-core" {"0.2.3" 1, "0.3.3" 2, "0.3.6" 3, "0.3.1" 4, "0.3.5" 5, "0.3.4" 1, "0.2.5" 6, "0.2.0" 4},
"ring/ring-devel" {"0.3.3" 3, "0.3.6" 1, "0.3.1" 3, "0.2.3" 2, "0.3.2" 2, "0.2.0" 3, "0.3.5" 5, "0.2.0-RC2" 1, "0.2.5" 6},
"ring/ring-httpcore-adapter" {"0.2.3" 1, "0.3.5" 1, "0.2.0-RC2" 1},
"ring/ring-jetty-adapter" {"0.2.0-RC2" 1, "0.2.0" 7, "0.3.1" 9, "0.3.2" 2, "0.2.3" 6, "0.3.3" 2, "0.3.4" 1, "0.2.5" 13, "0.2.0-SNAPSHOT" 1, "0.3.5" 8, "0.2.6" 1, "0.3.6" 3},
"ring/ring-jetty-async-adapter" {"0.3.3-SNAPSHOT" 1},
"ring/ring-servlet" {"0.3.5" 3, "0.3.1" 1, "0.3.6" 1, "0.2.3" 2, "0.2.0-RC2" 1, "0.2.5" 2},
"robert/hooke" {"1.1.0" 1, "1.0.2" 4},
"rome" {"1.0" 1},
"rome/rome" {"1.0" 1},
"sandbar" {"0.3.0-20100502.112537-5" 1},
"sandbar/sandbar" {"0.3.0" 1, "0.3.0-SNAPSHOT" 1, "0.2.4" 1},
"sandbar/sandbar-core" {"0.3.0" 1},
"sandbar/sandbar-session" {"0.2.4" 1},
"scriptjure" {"0.1.12" 1, "0.1.9" 1, "0.1.8" 1, "0.1.20" 2},
"servletapi" {"2.4" 1},
"slice" {"0.4.0-SNAPSHOT" 1},
"slick" {"274" 1},
"slick-util" {"1.0.0" 1},
"speclj" {"1.1.0" 7, "1.2.0" 4},
"spectator/spectator" {"1.1.0" 1},
"sqlitejdbc" {"0.5.6" 2},
"stemmers" {"0.2.1" 1},
"store" {"0.1.6-SNAPSHOT" 1, "1.0-SNAPSHOT" 1},
"stupiddb" {"0.3.0" 1},
"swank-clojure" {"1.2.0-break-SNAPSHOT" 1, "1.1.0-SNAPSHOT" 3, "1.2.0-SNAPSHOT" 12, "[1.2.0," 1, "1.2.0" 31, "1.1.0" 17, "1.3.0-SNAPSHOT" 70, "1.2.1" 257},
"swank-clojure/swank-clojure" {"1.2.1" 2, "1.1.0" 2},
"swarmiji" {"0.3.0" 1},
"swingrepl" {"1.0.0-SNAPSHOT" 2},
"tcrayford_parsley/parsley" {"0.1.0" 1},
"tokyocabinet" {"1.23-SNAPSHOT" 2},
"tokyotyrant" {"0.8.1" 1},
"ujmp-complete" {"0.2.4" 1},
"uk.org.alienscience/leiningen-war" {"0.0.10" 1, "0.0.12" 1, "0.0.3" 1},
"uncle" {"0.1.0" 1},
"unifycle" {"0.5.0" 2},
"units" {"0.2.3" 2},
"url-normalizer" {"0.0.4" 1},
"uteal" {"0.1.0-SNAPSHOT" 1},
"vimclojure" {"2.2.0-SNAPSHOT" 1},
"vimclojure/server" {"2.3.0-SNAPSHOT" 1, "2.2.0-SNAPSHOT" 2, "2.2.0" 8},
"voldemort/voldemort" {"0.81" 1},
"voldemort/voldemort-contrib" {"0.81" 1},
"webmine" {"0.1.1-SNAPSHOT" 1},
"weka/weka" {"3.6.2" 1},
"work" {"0.2.3-SNAPSHOT" 1, "0.0.1-SNAPSHOT" 1},
"woven/clj-json" {"0.3.1" 1},
"xalan" {"2.7.1" 1},
"xalan/xalan" {"2.7.1" 1},
"xmpp-clj" {"0.1.0" 1},
"yap" {"1.0.0" 1}}

@ohpauleez
Copy link
Author

A union of github and clojars returns me 1735 repos/projects.
From Feb 28th to April 26th, that's 324/57 new projects a day (about 5 to 6).

I wrote (and am finishing up) BitBucket bindings, which will allow us to see a large portion of all Clojure projects.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment