{"action":"created","comment":{"url":"https://api.github.com/repos/symfony/flex/pulls/comments/234952923","pull_request_review_id":176703448,"id":234952923,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIzNDk1MjkyMw==","diff_hunk":"@@ -30,31 +30,31 @@ public function unconfigure(Recipe $recipe, $config)\n         $this->removeFiles($config, $recipe->getFiles(), getcwd());\n     }\n \n-    private function copyFiles(array $manifest, array $files, string $to)\n+    private function copyFiles(array $manifest, array $files, string $to, bool $overwrite = false)\n     {\n         foreach ($manifest as $source => $target) {\n             $target = $this->options->expandTargetDir($target);\n             if ('/' === substr($source, -1)) {\n-                $this->copyDir($source, $this->path->concatenate([$to, $target]), $files);\n+                $this->copyDir($source, $this->path->concatenate([$to, $target]), $files, $overwrite);\n             } else {\n-                $this->copyFile($this->path->concatenate([$to, $target]), $files[$source]['contents'], $files[$source]['executable']);\n+                $this->copyFile($this->path->concatenate([$to, $target]), $files[$source]['contents'], $files[$source]['executable'], $overwrite);\n             }\n         }\n     }\n \n-    private function copyDir(string $source, string $target, array $files)\n+    private function copyDir(string $source, string $target, array $files, bool $overwrite = false)\n     {\n         foreach ($files as $file => $data) {\n             if (0 === strpos($file, $source)) {\n                 $file = $this->path->concatenate([$target, substr($file, \\strlen($source))]);\n-                $this->copyFile($file, $data['contents'], $data['executable']);\n+                $this->copyFile($file, $data['contents'], $data['executable'], $overwrite);\n             }\n         }\n     }\n \n-    private function copyFile(string $to, string $contents, bool $executable)\n+    private function copyFile(string $to, string $contents, bool $executable, bool $overwrite = false)\n     {\n-        if (file_exists($to)) {\n+        if (false === $overwrite && file_exists($to)) {","path":"src/Configurator/CopyFromRecipeConfigurator.php","position":48,"original_position":48,"commit_id":"3ce283f1b4ae33b9ca21c36c18b12b41875faa87","original_commit_id":"3ce283f1b4ae33b9ca21c36c18b12b41875faa87","user":{"login":"nicolas-grekas","id":243674,"node_id":"MDQ6VXNlcjI0MzY3NA==","avatar_url":"https://avatars3.githubusercontent.com/u/243674?v=4","gravatar_id":"","url":"https://api.github.com/users/nicolas-grekas","html_url":"https://github.com/nicolas-grekas","followers_url":"https://api.github.com/users/nicolas-grekas/followers","following_url":"https://api.github.com/users/nicolas-grekas/following{/other_user}","gists_url":"https://api.github.com/users/nicolas-grekas/gists{/gist_id}","starred_url":"https://api.github.com/users/nicolas-grekas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nicolas-grekas/subscriptions","organizations_url":"https://api.github.com/users/nicolas-grekas/orgs","repos_url":"https://api.github.com/users/nicolas-grekas/repos","events_url":"https://api.github.com/users/nicolas-grekas/events{/privacy}","received_events_url":"https://api.github.com/users/nicolas-grekas/received_events","type":"User","site_admin":false},"body":"if (!$overwrite && file_exists($to)) {","created_at":"2018-11-20T10:46:55Z","updated_at":"2018-11-20T10:49:33Z","html_url":"https://github.com/symfony/flex/pull/439#discussion_r234952923","pull_request_url":"https://api.github.com/repos/symfony/flex/pulls/439","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/symfony/flex/pulls/comments/234952923"},"html":{"href":"https://github.com/symfony/flex/pull/439#discussion_r234952923"},"pull_request":{"href":"https://api.github.com/repos/symfony/flex/pulls/439"}}},"pull_request":{"url":"https://api.github.com/repos/symfony/flex/pulls/439","id":232269188,"node_id":"MDExOlB1bGxSZXF1ZXN0MjMyMjY5MTg4","html_url":"https://github.com/symfony/flex/pull/439","diff_url":"https://github.com/symfony/flex/pull/439.diff","patch_url":"https://github.com/symfony/flex/pull/439.patch","issue_url":"https://api.github.com/repos/symfony/flex/issues/439","number":439,"state":"open","locked":false,"title":"Implement \"fix-recipes --overwrite\" option","user":{"login":"Pierstoval","id":3369266,"node_id":"MDQ6VXNlcjMzNjkyNjY=","avatar_url":"https://avatars0.githubusercontent.com/u/3369266?v=4","gravatar_id":"","url":"https://api.github.com/users/Pierstoval","html_url":"https://github.com/Pierstoval","followers_url":"https://api.github.com/users/Pierstoval/followers","following_url":"https://api.github.com/users/Pierstoval/following{/other_user}","gists_url":"https://api.github.com/users/Pierstoval/gists{/gist_id}","starred_url":"https://api.github.com/users/Pierstoval/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Pierstoval/subscriptions","organizations_url":"https://api.github.com/users/Pierstoval/orgs","repos_url":"https://api.github.com/users/Pierstoval/repos","events_url":"https://api.github.com/users/Pierstoval/events{/privacy}","received_events_url":"https://api.github.com/users/Pierstoval/received_events","type":"User","site_admin":false},"body":"Closes #179 ","created_at":"2018-11-20T10:44:20Z","updated_at":"2018-11-20T10:49:33Z","closed_at":null,"merged_at":null,"merge_commit_sha":"75220676bee34d377470f07c2f702c6b85399e31","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/symfony/flex/pulls/439/commits","review_comments_url":"https://api.github.com/repos/symfony/flex/pulls/439/comments","review_comment_url":"https://api.github.com/repos/symfony/flex/pulls/comments{/number}","comments_url":"https://api.github.com/repos/symfony/flex/issues/439/comments","statuses_url":"https://api.github.com/repos/symfony/flex/statuses/3ce283f1b4ae33b9ca21c36c18b12b41875faa87","head":{"label":"Pierstoval:fix-recipes-overwrite","ref":"fix-recipes-overwrite","sha":"3ce283f1b4ae33b9ca21c36c18b12b41875faa87","user":{"login":"Pierstoval","id":3369266,"node_id":"MDQ6VXNlcjMzNjkyNjY=","avatar_url":"https://avatars0.githubusercontent.com/u/3369266?v=4","gravatar_id":"","url":"https://api.github.com/users/Pierstoval","html_url":"https://github.com/Pierstoval","followers_url":"https://api.github.com/users/Pierstoval/followers","following_url":"https://api.github.com/users/Pierstoval/following{/other_user}","gists_url":"https://api.github.com/users/Pierstoval/gists{/gist_id}","starred_url":"https://api.github.com/users/Pierstoval/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Pierstoval/subscriptions","organizations_url":"https://api.github.com/users/Pierstoval/orgs","repos_url":"https://api.github.com/users/Pierstoval/repos","events_url":"https://api.github.com/users/Pierstoval/events{/privacy}","received_events_url":"https://api.github.com/users/Pierstoval/received_events","type":"User","site_admin":false},"repo":{"id":108538726,"node_id":"MDEwOlJlcG9zaXRvcnkxMDg1Mzg3MjY=","name":"flex","full_name":"Pierstoval/flex","private":false,"owner":{"login":"Pierstoval","id":3369266,"node_id":"MDQ6VXNlcjMzNjkyNjY=","avatar_url":"https://avatars0.githubusercontent.com/u/3369266?v=4","gravatar_id":"","url":"https://api.github.com/users/Pierstoval","html_url":"https://github.com/Pierstoval","followers_url":"https://api.github.com/users/Pierstoval/followers","following_url":"https://api.github.com/users/Pierstoval/following{/other_user}","gists_url":"https://api.github.com/users/Pierstoval/gists{/gist_id}","starred_url":"https://api.github.com/users/Pierstoval/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Pierstoval/subscriptions","organizations_url":"https://api.github.com/users/Pierstoval/orgs","repos_url":"https://api.github.com/users/Pierstoval/repos","events_url":"https://api.github.com/users/Pierstoval/events{/privacy}","received_events_url":"https://api.github.com/users/Pierstoval/received_events","type":"User","site_admin":false},"html_url":"https://github.com/Pierstoval/flex","description":"Composer plugin for Symfony","fork":true,"url":"https://api.github.com/repos/Pierstoval/flex","forks_url":"https://api.github.com/repos/Pierstoval/flex/forks","keys_url":"https://api.github.com/repos/Pierstoval/flex/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Pierstoval/flex/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Pierstoval/flex/teams","hooks_url":"https://api.github.com/repos/Pierstoval/flex/hooks","issue_events_url":"https://api.github.com/repos/Pierstoval/flex/issues/events{/number}","events_url":"https://api.github.com/repos/Pierstoval/flex/events","assignees_url":"https://api.github.com/repos/Pierstoval/flex/assignees{/user}","branches_url":"https://api.github.com/repos/Pierstoval/flex/branches{/branch}","tags_url":"https://api.github.com/repos/Pierstoval/flex/tags","blobs_url":"https://api.github.com/repos/Pierstoval/flex/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Pierstoval/flex/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Pierstoval/flex/git/refs{/sha}","trees_url":"https://api.github.com/repos/Pierstoval/flex/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Pierstoval/flex/statuses/{sha}","languages_url":"https://api.github.com/repos/Pierstoval/flex/languages","stargazers_url":"https://api.github.com/repos/Pierstoval/flex/stargazers","contributors_url":"https://api.github.com/repos/Pierstoval/flex/contributors","subscribers_url":"https://api.github.com/repos/Pierstoval/flex/subscribers","subscription_url":"https://api.github.com/repos/Pierstoval/flex/subscription","commits_url":"https://api.github.com/repos/Pierstoval/flex/commits{/sha}","git_commits_url":"https://api.github.com/repos/Pierstoval/flex/git/commits{/sha}","comments_url":"https://api.github.com/repos/Pierstoval/flex/comments{/number}","issue_comment_url":"https://api.github.com/repos/Pierstoval/flex/issues/comments{/number}","contents_url":"https://api.github.com/repos/Pierstoval/flex/contents/{+path}","compare_url":"https://api.github.com/repos/Pierstoval/flex/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Pierstoval/flex/merges","archive_url":"https://api.github.com/repos/Pierstoval/flex/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Pierstoval/flex/downloads","issues_url":"https://api.github.com/repos/Pierstoval/flex/issues{/number}","pulls_url":"https://api.github.com/repos/Pierstoval/flex/pulls{/number}","milestones_url":"https://api.github.com/repos/Pierstoval/flex/milestones{/number}","notifications_url":"https://api.github.com/repos/Pierstoval/flex/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Pierstoval/flex/labels{/name}","releases_url":"https://api.github.com/repos/Pierstoval/flex/releases{/id}","deployments_url":"https://api.github.com/repos/Pierstoval/flex/deployments","created_at":"2017-10-27T11:38:07Z","updated_at":"2017-10-27T11:38:10Z","pushed_at":"2018-11-20T10:43:43Z","git_url":"git://github.com/Pierstoval/flex.git","ssh_url":"git@github.com:Pierstoval/flex.git","clone_url":"https://github.com/Pierstoval/flex.git","svn_url":"https://github.com/Pierstoval/flex","homepage":"https://symfony.sh/","size":246,"stargazers_count":0,"watchers_count":0,"language":"PHP","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"symfony:master","ref":"master","sha":"955774ecf07b10230bb5b44e150ba078b45f68fa","user":{"login":"symfony","id":143937,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE0MzkzNw==","avatar_url":"https://avatars3.githubusercontent.com/u/143937?v=4","gravatar_id":"","url":"https://api.github.com/users/symfony","html_url":"https://github.com/symfony","followers_url":"https://api.github.com/users/symfony/followers","following_url":"https://api.github.com/users/symfony/following{/other_user}","gists_url":"https://api.github.com/users/symfony/gists{/gist_id}","starred_url":"https://api.github.com/users/symfony/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/symfony/subscriptions","organizations_url":"https://api.github.com/users/symfony/orgs","repos_url":"https://api.github.com/users/symfony/repos","events_url":"https://api.github.com/users/symfony/events{/privacy}","received_events_url":"https://api.github.com/users/symfony/received_events","type":"Organization","site_admin":false},"repo":{"id":70288750,"node_id":"MDEwOlJlcG9zaXRvcnk3MDI4ODc1MA==","name":"flex","full_name":"symfony/flex","private":false,"owner":{"login":"symfony","id":143937,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE0MzkzNw==","avatar_url":"https://avatars3.githubusercontent.com/u/143937?v=4","gravatar_id":"","url":"https://api.github.com/users/symfony","html_url":"https://github.com/symfony","followers_url":"https://api.github.com/users/symfony/followers","following_url":"https://api.github.com/users/symfony/following{/other_user}","gists_url":"https://api.github.com/users/symfony/gists{/gist_id}","starred_url":"https://api.github.com/users/symfony/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/symfony/subscriptions","organizations_url":"https://api.github.com/users/symfony/orgs","repos_url":"https://api.github.com/users/symfony/repos","events_url":"https://api.github.com/users/symfony/events{/privacy}","received_events_url":"https://api.github.com/users/symfony/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/symfony/flex","description":"Composer plugin for Symfony","fork":false,"url":"https://api.github.com/repos/symfony/flex","forks_url":"https://api.github.com/repos/symfony/flex/forks","keys_url":"https://api.github.com/repos/symfony/flex/keys{/key_id}","collaborators_url":"https://api.github.com/repos/symfony/flex/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/symfony/flex/teams","hooks_url":"https://api.github.com/repos/symfony/flex/hooks","issue_events_url":"https://api.github.com/repos/symfony/flex/issues/events{/number}","events_url":"https://api.github.com/repos/symfony/flex/events","assignees_url":"https://api.github.com/repos/symfony/flex/assignees{/user}","branches_url":"https://api.github.com/repos/symfony/flex/branches{/branch}","tags_url":"https://api.github.com/repos/symfony/flex/tags","blobs_url":"https://api.github.com/repos/symfony/flex/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/symfony/flex/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/symfony/flex/git/refs{/sha}","trees_url":"https://api.github.com/repos/symfony/flex/git/trees{/sha}","statuses_url":"https://api.github.com/repos/symfony/flex/statuses/{sha}","languages_url":"https://api.github.com/repos/symfony/flex/languages","stargazers_url":"https://api.github.com/repos/symfony/flex/stargazers","contributors_url":"https://api.github.com/repos/symfony/flex/contributors","subscribers_url":"https://api.github.com/repos/symfony/flex/subscribers","subscription_url":"https://api.github.com/repos/symfony/flex/subscription","commits_url":"https://api.github.com/repos/symfony/flex/commits{/sha}","git_commits_url":"https://api.github.com/repos/symfony/flex/git/commits{/sha}","comments_url":"https://api.github.com/repos/symfony/flex/comments{/number}","issue_comment_url":"https://api.github.com/repos/symfony/flex/issues/comments{/number}","contents_url":"https://api.github.com/repos/symfony/flex/contents/{+path}","compare_url":"https://api.github.com/repos/symfony/flex/compare/{base}...{head}","merges_url":"https://api.github.com/repos/symfony/flex/merges","archive_url":"https://api.github.com/repos/symfony/flex/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/symfony/flex/downloads","issues_url":"https://api.github.com/repos/symfony/flex/issues{/number}","pulls_url":"https://api.github.com/repos/symfony/flex/pulls{/number}","milestones_url":"https://api.github.com/repos/symfony/flex/milestones{/number}","notifications_url":"https://api.github.com/repos/symfony/flex/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/symfony/flex/labels{/name}","releases_url":"https://api.github.com/repos/symfony/flex/releases{/id}","deployments_url":"https://api.github.com/repos/symfony/flex/deployments","created_at":"2016-10-07T23:01:10Z","updated_at":"2018-11-20T09:59:44Z","pushed_at":"2018-11-20T10:44:20Z","git_url":"git://github.com/symfony/flex.git","ssh_url":"git@github.com:symfony/flex.git","clone_url":"https://github.com/symfony/flex.git","svn_url":"https://github.com/symfony/flex","homepage":"https://flex.symfony.com/","size":537,"stargazers_count":1835,"watchers_count":1835,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":88,"mirror_url":null,"archived":false,"open_issues_count":33,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":88,"open_issues":33,"watchers":1835,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/symfony/flex/pulls/439"},"html":{"href":"https://github.com/symfony/flex/pull/439"},"issue":{"href":"https://api.github.com/repos/symfony/flex/issues/439"},"comments":{"href":"https://api.github.com/repos/symfony/flex/issues/439/comments"},"review_comments":{"href":"https://api.github.com/repos/symfony/flex/pulls/439/comments"},"review_comment":{"href":"https://api.github.com/repos/symfony/flex/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/symfony/flex/pulls/439/commits"},"statuses":{"href":"https://api.github.com/repos/symfony/flex/statuses/3ce283f1b4ae33b9ca21c36c18b12b41875faa87"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"nicolas-grekas"}}