-;; Copyright (c) 2015-2017 Andrey Antukh <niwi@niwi.nz>
+;; Copyright (c) 2015-2019 Andrey Antukh <niwi@niwi.nz>
 ;; All rights reserved.
 ;;
 ;; Redistribution and use in source and binary forms, with or without

  - `:basedir`: a fisical directory on your local machine
  - `:baseuri`: a base uri used for resolve the files
  - `:executor`: an executor instance (optional)
  - `:transform-filename`: a function responsible to transform filename (optional)
  "
  [{:keys [basedir baseuri executor]
    :or {executor (ForkJoinPool/commonPool)}

                        {:path (str path)})))
      fullpath)))

(defn- save
  [base path content]
  (let [^Path path (pt/-path path)
        ^Path fullpath (normalize-path base path)]
    (when-not (fs/exists? (.getParent fullpath))
      (fs/create-dir (.getParent fullpath)))
    (loop [iteration nil]
