{"action":"created","comment":{"url":"https://api.github.com/repos/ambiata/mundane/pulls/comments/22405538","id":22405538,"diff_hunk":"@@ -1,71 +1,30 @@\n package com.ambiata.mundane\n \n+import path._\n import java.io._\n-import reflect.MacrosCompat\n import scalaz._, Scalaz._\n import scalaz.effect.IO\n import control.{ResultT, RIO}\n \n-package object io extends MacrosCompat {\n+package object io {\n \n   type Logger = String => IO[Unit]\n-  lazy val noLogging = (s: String) => IO(())\n-  lazy val consoleLogging = (s: String) => IO(println(s))\n+  val noLogging = (s: String) => IO(())\n+  val consoleLogging = (s: String) => IO(println(s))\n \n   type Env = Map[String, String]\n \n-  implicit def stringToDirPathSyntax(s: String): DirPathSyntax =\n-    macro createDirPathSyntax\n-\n-  def createDirPathSyntax(c: Context)(s: c.Expr[String]): c.Expr[DirPathSyntax] = {\n-    import c.universe._\n-    s match {\n-      case Expr(Literal(Constant(v: String))) => c.Expr(q\"new DirPathSyntax(${createFileNameFromString(c)(v)})\")\n-      case _ => c.abort(c.enclosingPosition, s\"Not a literal ${showRaw(s)}\")\n-    }\n-\n-  }\n-\n-  implicit class NameToDirPathSyntax(name: FileName) {\n-    def </>(other: FileName): DirPath  = DirPath(name) </> other\n-    def <|>(other: FileName): FilePath = DirPath(name) <|> other\n+  implicit class LocalFileAsStream(filePath: LocalFile) {\n+    def toInputStream: RIO[InputStream] = RIO.safe { new FileInputStream(filePath.path.path) }\n   }\n \n-  implicit class FilePathAsStream(filePath: FilePath) {\n+  implicit class LocalPathSyntax(filePath: Path) {\n+    def toFile: File = new File(filePath.path)\n     def toOutputStream: RIO[OutputStream] = RIO.safe { new FileOutputStream(filePath.path) }","path":"mundane-io/src/main/scala/com/ambiata/mundane/io/package.scala","position":43,"original_position":43,"commit_id":"c503a64535458a18abf12a74950392899691cb3d","original_commit_id":"c503a64535458a18abf12a74950392899691cb3d","user":{"login":"nhibberd","id":447873,"avatar_url":"https://avatars.githubusercontent.com/u/447873?v=3","gravatar_id":"","url":"https://api.github.com/users/nhibberd","html_url":"https://github.com/nhibberd","followers_url":"https://api.github.com/users/nhibberd/followers","following_url":"https://api.github.com/users/nhibberd/following{/other_user}","gists_url":"https://api.github.com/users/nhibberd/gists{/gist_id}","starred_url":"https://api.github.com/users/nhibberd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nhibberd/subscriptions","organizations_url":"https://api.github.com/users/nhibberd/orgs","repos_url":"https://api.github.com/users/nhibberd/repos","events_url":"https://api.github.com/users/nhibberd/events{/privacy}","received_events_url":"https://api.github.com/users/nhibberd/received_events","type":"User","site_admin":false},"body":"Move to LocalPath and ensure mkdirs(filePath.dirname)","created_at":"2015-01-02T06:58:54Z","updated_at":"2015-01-02T06:58:54Z","html_url":"https://github.com/ambiata/mundane/pull/71#discussion_r22405538","pull_request_url":"https://api.github.com/repos/ambiata/mundane/pulls/71","_links":{"self":{"href":"https://api.github.com/repos/ambiata/mundane/pulls/comments/22405538"},"html":{"href":"https://github.com/ambiata/mundane/pull/71#discussion_r22405538"},"pull_request":{"href":"https://api.github.com/repos/ambiata/mundane/pulls/71"}}},"pull_request":{"url":"https://api.github.com/repos/ambiata/mundane/pulls/71","id":26117242,"html_url":"https://github.com/ambiata/mundane/pull/71","diff_url":"https://github.com/ambiata/mundane/pull/71.diff","patch_url":"https://github.com/ambiata/mundane/pull/71.patch","issue_url":"https://api.github.com/repos/ambiata/mundane/issues/71","number":71,"state":"open","locked":false,"title":"WIP: Topic/path","user":{"login":"nhibberd","id":447873,"avatar_url":"https://avatars.githubusercontent.com/u/447873?v=3","gravatar_id":"","url":"https://api.github.com/users/nhibberd","html_url":"https://github.com/nhibberd","followers_url":"https://api.github.com/users/nhibberd/followers","following_url":"https://api.github.com/users/nhibberd/following{/other_user}","gists_url":"https://api.github.com/users/nhibberd/gists{/gist_id}","starred_url":"https://api.github.com/users/nhibberd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nhibberd/subscriptions","organizations_url":"https://api.github.com/users/nhibberd/orgs","repos_url":"https://api.github.com/users/nhibberd/repos","events_url":"https://api.github.com/users/nhibberd/events{/privacy}","received_events_url":"https://api.github.com/users/nhibberd/received_events","type":"User","site_admin":false},"body":"Ingore this, just for review :car: ","created_at":"2014-12-16T01:43:36Z","updated_at":"2015-01-02T06:58:54Z","closed_at":null,"merged_at":null,"merge_commit_sha":"b2233d1cffdcf25ff70ddb22115bf570b3bebad0","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/ambiata/mundane/pulls/71/commits","review_comments_url":"https://api.github.com/repos/ambiata/mundane/pulls/71/comments","review_comment_url":"https://api.github.com/repos/ambiata/mundane/pulls/comments/{number}","comments_url":"https://api.github.com/repos/ambiata/mundane/issues/71/comments","statuses_url":"https://api.github.com/repos/ambiata/mundane/statuses/c503a64535458a18abf12a74950392899691cb3d","head":{"label":"ambiata:topic/path","ref":"topic/path","sha":"c503a64535458a18abf12a74950392899691cb3d","user":{"login":"ambiata","id":1691023,"avatar_url":"https://avatars.githubusercontent.com/u/1691023?v=3","gravatar_id":"","url":"https://api.github.com/users/ambiata","html_url":"https://github.com/ambiata","followers_url":"https://api.github.com/users/ambiata/followers","following_url":"https://api.github.com/users/ambiata/following{/other_user}","gists_url":"https://api.github.com/users/ambiata/gists{/gist_id}","starred_url":"https://api.github.com/users/ambiata/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ambiata/subscriptions","organizations_url":"https://api.github.com/users/ambiata/orgs","repos_url":"https://api.github.com/users/ambiata/repos","events_url":"https://api.github.com/users/ambiata/events{/privacy}","received_events_url":"https://api.github.com/users/ambiata/received_events","type":"Organization","site_admin":false},"repo":{"id":14035086,"name":"mundane","full_name":"ambiata/mundane","owner":{"login":"ambiata","id":1691023,"avatar_url":"https://avatars.githubusercontent.com/u/1691023?v=3","gravatar_id":"","url":"https://api.github.com/users/ambiata","html_url":"https://github.com/ambiata","followers_url":"https://api.github.com/users/ambiata/followers","following_url":"https://api.github.com/users/ambiata/following{/other_user}","gists_url":"https://api.github.com/users/ambiata/gists{/gist_id}","starred_url":"https://api.github.com/users/ambiata/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ambiata/subscriptions","organizations_url":"https://api.github.com/users/ambiata/orgs","repos_url":"https://api.github.com/users/ambiata/repos","events_url":"https://api.github.com/users/ambiata/events{/privacy}","received_events_url":"https://api.github.com/users/ambiata/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/ambiata/mundane","description":"Low-level scala tools for building applications that might actually work ","fork":false,"url":"https://api.github.com/repos/ambiata/mundane","forks_url":"https://api.github.com/repos/ambiata/mundane/forks","keys_url":"https://api.github.com/repos/ambiata/mundane/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ambiata/mundane/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ambiata/mundane/teams","hooks_url":"https://api.github.com/repos/ambiata/mundane/hooks","issue_events_url":"https://api.github.com/repos/ambiata/mundane/issues/events{/number}","events_url":"https://api.github.com/repos/ambiata/mundane/events","assignees_url":"https://api.github.com/repos/ambiata/mundane/assignees{/user}","branches_url":"https://api.github.com/repos/ambiata/mundane/branches{/branch}","tags_url":"https://api.github.com/repos/ambiata/mundane/tags","blobs_url":"https://api.github.com/repos/ambiata/mundane/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ambiata/mundane/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ambiata/mundane/git/refs{/sha}","trees_url":"https://api.github.com/repos/ambiata/mundane/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ambiata/mundane/statuses/{sha}","languages_url":"https://api.github.com/repos/ambiata/mundane/languages","stargazers_url":"https://api.github.com/repos/ambiata/mundane/stargazers","contributors_url":"https://api.github.com/repos/ambiata/mundane/contributors","subscribers_url":"https://api.github.com/repos/ambiata/mundane/subscribers","subscription_url":"https://api.github.com/repos/ambiata/mundane/subscription","commits_url":"https://api.github.com/repos/ambiata/mundane/commits{/sha}","git_commits_url":"https://api.github.com/repos/ambiata/mundane/git/commits{/sha}","comments_url":"https://api.github.com/repos/ambiata/mundane/comments{/number}","issue_comment_url":"https://api.github.com/repos/ambiata/mundane/issues/comments/{number}","contents_url":"https://api.github.com/repos/ambiata/mundane/contents/{+path}","compare_url":"https://api.github.com/repos/ambiata/mundane/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ambiata/mundane/merges","archive_url":"https://api.github.com/repos/ambiata/mundane/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ambiata/mundane/downloads","issues_url":"https://api.github.com/repos/ambiata/mundane/issues{/number}","pulls_url":"https://api.github.com/repos/ambiata/mundane/pulls{/number}","milestones_url":"https://api.github.com/repos/ambiata/mundane/milestones{/number}","notifications_url":"https://api.github.com/repos/ambiata/mundane/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ambiata/mundane/labels{/name}","releases_url":"https://api.github.com/repos/ambiata/mundane/releases{/id}","created_at":"2013-11-01T03:46:02Z","updated_at":"2014-12-30T22:55:40Z","pushed_at":"2015-01-02T06:55:16Z","git_url":"git://github.com/ambiata/mundane.git","ssh_url":"git@github.com:ambiata/mundane.git","clone_url":"https://github.com/ambiata/mundane.git","svn_url":"https://github.com/ambiata/mundane","homepage":"","size":3061,"stargazers_count":6,"watchers_count":6,"language":"Scala","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":23,"forks":0,"open_issues":23,"watchers":6,"default_branch":"master"}},"base":{"label":"ambiata:master","ref":"master","sha":"50fc79257d864b448dad9857e489eb475ac44c29","user":{"login":"ambiata","id":1691023,"avatar_url":"https://avatars.githubusercontent.com/u/1691023?v=3","gravatar_id":"","url":"https://api.github.com/users/ambiata","html_url":"https://github.com/ambiata","followers_url":"https://api.github.com/users/ambiata/followers","following_url":"https://api.github.com/users/ambiata/following{/other_user}","gists_url":"https://api.github.com/users/ambiata/gists{/gist_id}","starred_url":"https://api.github.com/users/ambiata/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ambiata/subscriptions","organizations_url":"https://api.github.com/users/ambiata/orgs","repos_url":"https://api.github.com/users/ambiata/repos","events_url":"https://api.github.com/users/ambiata/events{/privacy}","received_events_url":"https://api.github.com/users/ambiata/received_events","type":"Organization","site_admin":false},"repo":{"id":14035086,"name":"mundane","full_name":"ambiata/mundane","owner":{"login":"ambiata","id":1691023,"avatar_url":"https://avatars.githubusercontent.com/u/1691023?v=3","gravatar_id":"","url":"https://api.github.com/users/ambiata","html_url":"https://github.com/ambiata","followers_url":"https://api.github.com/users/ambiata/followers","following_url":"https://api.github.com/users/ambiata/following{/other_user}","gists_url":"https://api.github.com/users/ambiata/gists{/gist_id}","starred_url":"https://api.github.com/users/ambiata/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ambiata/subscriptions","organizations_url":"https://api.github.com/users/ambiata/orgs","repos_url":"https://api.github.com/users/ambiata/repos","events_url":"https://api.github.com/users/ambiata/events{/privacy}","received_events_url":"https://api.github.com/users/ambiata/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/ambiata/mundane","description":"Low-level scala tools for building applications that might actually work ","fork":false,"url":"https://api.github.com/repos/ambiata/mundane","forks_url":"https://api.github.com/repos/ambiata/mundane/forks","keys_url":"https://api.github.com/repos/ambiata/mundane/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ambiata/mundane/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ambiata/mundane/teams","hooks_url":"https://api.github.com/repos/ambiata/mundane/hooks","issue_events_url":"https://api.github.com/repos/ambiata/mundane/issues/events{/number}","events_url":"https://api.github.com/repos/ambiata/mundane/events","assignees_url":"https://api.github.com/repos/ambiata/mundane/assignees{/user}","branches_url":"https://api.github.com/repos/ambiata/mundane/branches{/branch}","tags_url":"https://api.github.com/repos/ambiata/mundane/tags","blobs_url":"https://api.github.com/repos/ambiata/mundane/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ambiata/mundane/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ambiata/mundane/git/refs{/sha}","trees_url":"https://api.github.com/repos/ambiata/mundane/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ambiata/mundane/statuses/{sha}","languages_url":"https://api.github.com/repos/ambiata/mundane/languages","stargazers_url":"https://api.github.com/repos/ambiata/mundane/stargazers","contributors_url":"https://api.github.com/repos/ambiata/mundane/contributors","subscribers_url":"https://api.github.com/repos/ambiata/mundane/subscribers","subscription_url":"https://api.github.com/repos/ambiata/mundane/subscription","commits_url":"https://api.github.com/repos/ambiata/mundane/commits{/sha}","git_commits_url":"https://api.github.com/repos/ambiata/mundane/git/commits{/sha}","comments_url":"https://api.github.com/repos/ambiata/mundane/comments{/number}","issue_comment_url":"https://api.github.com/repos/ambiata/mundane/issues/comments/{number}","contents_url":"https://api.github.com/repos/ambiata/mundane/contents/{+path}","compare_url":"https://api.github.com/repos/ambiata/mundane/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ambiata/mundane/merges","archive_url":"https://api.github.com/repos/ambiata/mundane/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ambiata/mundane/downloads","issues_url":"https://api.github.com/repos/ambiata/mundane/issues{/number}","pulls_url":"https://api.github.com/repos/ambiata/mundane/pulls{/number}","milestones_url":"https://api.github.com/repos/ambiata/mundane/milestones{/number}","notifications_url":"https://api.github.com/repos/ambiata/mundane/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ambiata/mundane/labels{/name}","releases_url":"https://api.github.com/repos/ambiata/mundane/releases{/id}","created_at":"2013-11-01T03:46:02Z","updated_at":"2014-12-30T22:55:40Z","pushed_at":"2015-01-02T06:55:16Z","git_url":"git://github.com/ambiata/mundane.git","ssh_url":"git@github.com:ambiata/mundane.git","clone_url":"https://github.com/ambiata/mundane.git","svn_url":"https://github.com/ambiata/mundane","homepage":"","size":3061,"stargazers_count":6,"watchers_count":6,"language":"Scala","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":23,"forks":0,"open_issues":23,"watchers":6,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/ambiata/mundane/pulls/71"},"html":{"href":"https://github.com/ambiata/mundane/pull/71"},"issue":{"href":"https://api.github.com/repos/ambiata/mundane/issues/71"},"comments":{"href":"https://api.github.com/repos/ambiata/mundane/issues/71/comments"},"review_comments":{"href":"https://api.github.com/repos/ambiata/mundane/pulls/71/comments"},"review_comment":{"href":"https://api.github.com/repos/ambiata/mundane/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/ambiata/mundane/pulls/71/commits"},"statuses":{"href":"https://api.github.com/repos/ambiata/mundane/statuses/c503a64535458a18abf12a74950392899691cb3d"}}}}