 (def src-path-def [:source-paths])
 (def test-path-def [:test-paths])
 (def resource-path-def [:resource-paths])
-(def hash-length 10)
 (def standard-test-cmd [["./lein.sh" "clean"] ["./lein.sh" "test"]])
+(def hash-length 8)
+(def empty-occurence-str "X ")
 
 ;;;; Read target project  helper  ;;;;
 (defn ->target-project-path [project-name]

       :name    (last name-segments)})
    {:name (name k)}))

(defn ->pretty-print-structure [data selector]
  (reduce-kv
   (fn [m k v] (conj m (merge
                        (occurence-map-for k selector)
                        v)))
   []
   data))

(defn log-resouces-table [m resource-name]
  (m/info "\n* List of" resource-name)
  (m/info "     - hash-value (.i.e a3d66)  :  the namespace/resource is defined in the project.clj")
  (m/info "     - X  :                     :  the namespace/resource does not exist in the project")
  (pp/print-table (sort-by :name m))
  (m/info "\n"))

(defn build-resource-table [projects selector render]
  (-> projects

    (update-resource! resource target-project source-project-desc (project-clj-of target-projects-desc target-project)))
  (m/info "*\n****************************************************************\n"))

(defn log-resouces-table [m resource-name]
  (m/info "\n* List of" resource-name)
  (m/info "     -"
          empty-occurence-str
          "                        :  the namespace/resource does not exist in the project although it has been specified")
  (m/info "     - hash-value (.i.e ddfa3d66) :  the namespace/resource is defined in the project.clj")
  (m/info "                                    "
          "|resource| ==> 5532BDEA | means that the hash value doesn't match on all projects\n")
  (pp/print-table (sort-by :name m))
  (m/info "\n"))

(defn aggregate [result [namespace project]]
  (let [project-occurence (if (contains? result namespace)
                            (merge-with str project (get result namespace))
