Will someone please help me understand what I'm doing wrong?

The code below is *supposed* to do the following.

1) Checkout the top level directory of a Subversion repository with empty
depth.
2) Update the project directories (the ones right under the root of the
repository) with depth immediates, thus downloading their sub-directories:
"branches" and "tags".
3) Update the specific branch called BRANCHNAME with depth infinity.

The result should be that I have a Subversion working copy that looks
something like this, with BRANCHNAME also expanding to the specific code
stored in that branch.

├───project1
│   ├───branches
│   │   └───BRANCHNAME
│   └───tags
├───project2
│   ├───branches
│   │   └───BRANCHNAME
│   └───tags
└───project3
    ├───branches
    │   └───BRANCHNAME
    └───tags
...

The problem is that even though I have 38 projects in the repository, only 9
projects get updated.  Here's the code.  I can't provide the clojure.svn
code unfortunately, but hopefully I'm doing something obviously wrong that
someone can quickly see.

(use 'clojure.svn)
(use '[clojure.contrib.str-utils :only (re-split str-join)])

(def repo-url "URL_TO_SVN_REPO")
(def dst-dir "PATH_TO_WORKING_COPY")
(def projects (ls repo-url))
(def agents (map agent (take 5 (repeat 0))))
(co repo-url dst-dir EMPTY)
(doseq [[p a] (partition 2 (interleave projects (cycle agents)))]
  (do
    (send-off
      a
      (fn [_ & args] (apply up args))
      (str-join "/" [dst-dir p])
      IMMEDIATES)
    (send-off
      a
      (fn [_ & args] (apply up args))
      (str-join "/" [dst-dir p "branches" "BRANCHNAME"])
      INFINITY)))

Thanks,
Justin

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to 
clojure+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to