 
 (defn backup-dir [base-dir path]
   (io/file base-dir
-    (str/join "-" (conj (vec (str/split path #"/"))
-                    (current-date-str)))))
+           (str/join "-" (conj (vec (str/split path #"/"))
+                               (current-date-str)))))
 
 (defn path->backup [path storage base-backup-dir]
   (let [ts-dir (backup-dir base-backup-dir path)]
     (run!
-      (fn [p]
-        (try
-          (let [url (storage/artifact-url storage p)
-                dest (io/file ts-dir p)]
-            (.mkdirs (.getParentFile dest))
-            (with-open [in (.openStream url)]
-              (io/copy in dest)))
-          (catch Exception e
-            (printf "WARNING: failed to backup %s: %s\n" p (.getMessage e)))))
-      (storage/path-seq storage path))))
+     (fn [p]
+       (try
+         (let [url (storage/artifact-url storage p)
+               dest (io/file ts-dir p)]
+           (.mkdirs (.getParentFile dest))
+           (with-open [in (.openStream url)]
+             (io/copy in dest)))
+         (catch Exception e
+           (printf "WARNING: failed to backup %s: %s\n" p (.getMessage e)))))
+     (storage/path-seq storage path))))
 
 (defn segments->path [segments]
   (let [[group & rest] (remove nil? segments)]

        (db/verify-group! *db* username group-name)
        (db/find-group-verification *db* group-name)))))

(defn handler [mapping]
  (nrepl/default-handler
    (with-meta

(ns clojars.admin
  (:require
   [clojars.config :refer [config]]
   [clojars.db :as db]
   [clojars.file-utils :as fu]
   [clojars.search :as search]
   [clojars.storage :as storage]
   [clojure.java.io :as io]
   [clojure.java.shell :as shell]
   [clojure.pprint :refer [pprint]]
   [clojure.string :as str]
   [clojure.tools.nrepl.server :as nrepl])
  (:import
   java.text.SimpleDateFormat))

(defn current-date-str []
  (.format (SimpleDateFormat. "yyyyMMdd") (db/get-time)))
