{"action":"created","comment":{"url":"https://api.github.com/repos/oracle/opengrok/pulls/comments/192042327","pull_request_review_id":124735234,"id":192042327,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDE5MjA0MjMyNw==","diff_hunk":"@@ -229,6 +234,20 @@ public void setNavigateWindowEnabled(boolean navigateWindowEnabled) {\n         this.navigateWindowEnabled = navigateWindowEnabled;\n     }\n \n+    /**\n+     * @return true if this project handles renamed files.\n+     */\n+    public boolean isHandleRenamedFiles() {\n+        return handleRenamedFiles;","path":"src/org/opensolaris/opengrok/configuration/Project.java","position":31,"original_position":31,"commit_id":"d910e8636091d1cfd5549b071e8f20ce469cd0e4","original_commit_id":"d910e8636091d1cfd5549b071e8f20ce469cd0e4","user":{"login":"tulinkry","id":6997160,"node_id":"MDQ6VXNlcjY5OTcxNjA=","avatar_url":"https://avatars1.githubusercontent.com/u/6997160?v=4","gravatar_id":"","url":"https://api.github.com/users/tulinkry","html_url":"https://github.com/tulinkry","followers_url":"https://api.github.com/users/tulinkry/followers","following_url":"https://api.github.com/users/tulinkry/following{/other_user}","gists_url":"https://api.github.com/users/tulinkry/gists{/gist_id}","starred_url":"https://api.github.com/users/tulinkry/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tulinkry/subscriptions","organizations_url":"https://api.github.com/users/tulinkry/orgs","repos_url":"https://api.github.com/users/tulinkry/repos","events_url":"https://api.github.com/users/tulinkry/events{/privacy}","received_events_url":"https://api.github.com/users/tulinkry/received_events","type":"User","site_admin":false},"body":"this cause potential NPE when `handleRenamedFiles` is null, doesn't it?","created_at":"2018-05-31T09:38:04Z","updated_at":"2018-05-31T09:40:12Z","html_url":"https://github.com/oracle/opengrok/pull/2134#discussion_r192042327","pull_request_url":"https://api.github.com/repos/oracle/opengrok/pulls/2134","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/oracle/opengrok/pulls/comments/192042327"},"html":{"href":"https://github.com/oracle/opengrok/pull/2134#discussion_r192042327"},"pull_request":{"href":"https://api.github.com/repos/oracle/opengrok/pulls/2134"}}},"pull_request":{"url":"https://api.github.com/repos/oracle/opengrok/pulls/2134","id":191492950,"node_id":"MDExOlB1bGxSZXF1ZXN0MTkxNDkyOTUw","html_url":"https://github.com/oracle/opengrok/pull/2134","diff_url":"https://github.com/oracle/opengrok/pull/2134.diff","patch_url":"https://github.com/oracle/opengrok/pull/2134.patch","issue_url":"https://api.github.com/repos/oracle/opengrok/issues/2134","number":2134,"state":"open","locked":false,"title":"per project renamed file handling","user":{"login":"vladak","id":2934284,"node_id":"MDQ6VXNlcjI5MzQyODQ=","avatar_url":"https://avatars3.githubusercontent.com/u/2934284?v=4","gravatar_id":"","url":"https://api.github.com/users/vladak","html_url":"https://github.com/vladak","followers_url":"https://api.github.com/users/vladak/followers","following_url":"https://api.github.com/users/vladak/following{/other_user}","gists_url":"https://api.github.com/users/vladak/gists{/gist_id}","starred_url":"https://api.github.com/users/vladak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vladak/subscriptions","organizations_url":"https://api.github.com/users/vladak/orgs","repos_url":"https://api.github.com/users/vladak/repos","events_url":"https://api.github.com/users/vladak/events{/privacy}","received_events_url":"https://api.github.com/users/vladak/received_events","type":"User","site_admin":false},"body":"Introduces per-project tunable to enable override of renamed file handling (this is handy e.g. when doing full reindex when renamed file handling is enabled by default and some projects have too rich history that is not needed. Or vice versa.). After some trial and error I decided to push this information down to `Repository` level so that it is cached.\r\n\r\nAs a test I ran the indexer with the following read-only config (supplied to the -R option) and without `--renamedHistory` (it will be off by default):\r\n\r\n```xml\r\n<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n<java version=\"1.8.0_60\" class=\"java.beans.XMLDecoder\">\r\n <object class=\"org.opensolaris.opengrok.configuration.Configuration\" id=\"Configuration0\">\r\n\r\n  <void property=\"projects\">\r\n   <void method=\"put\">\r\n    <string>foo-renamed</string>\r\n    <object class=\"org.opensolaris.opengrok.configuration.Project\">\r\n     <void property=\"handleRenamedFiles\">\r\n      <boolean>true</boolean>\r\n     </void>\r\n    </object>\r\n   </void>\r\n  </void>\r\n\r\n </object>\r\n</java>\r\n```\r\n\r\nand checked renamed files for this project have complete history.\r\n\r\nThen used the same, reversed the condition to `false`, cloned the project and ran the indexer without `--renamedHistory on`, checked the first project does not have renamed history and the second has.\r\n\r\nAlso ran the indexer without projects (without the -P option) as a sanity check.","created_at":"2018-05-30T15:26:53Z","updated_at":"2018-05-31T09:40:12Z","closed_at":null,"merged_at":null,"merge_commit_sha":"38a2dff67c9571927d7b5dd4e0b2f788b1602b76","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/oracle/opengrok/pulls/2134/commits","review_comments_url":"https://api.github.com/repos/oracle/opengrok/pulls/2134/comments","review_comment_url":"https://api.github.com/repos/oracle/opengrok/pulls/comments{/number}","comments_url":"https://api.github.com/repos/oracle/opengrok/issues/2134/comments","statuses_url":"https://api.github.com/repos/oracle/opengrok/statuses/d910e8636091d1cfd5549b071e8f20ce469cd0e4","head":{"label":"vladak:project_renamed_files","ref":"project_renamed_files","sha":"d910e8636091d1cfd5549b071e8f20ce469cd0e4","user":{"login":"vladak","id":2934284,"node_id":"MDQ6VXNlcjI5MzQyODQ=","avatar_url":"https://avatars3.githubusercontent.com/u/2934284?v=4","gravatar_id":"","url":"https://api.github.com/users/vladak","html_url":"https://github.com/vladak","followers_url":"https://api.github.com/users/vladak/followers","following_url":"https://api.github.com/users/vladak/following{/other_user}","gists_url":"https://api.github.com/users/vladak/gists{/gist_id}","starred_url":"https://api.github.com/users/vladak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vladak/subscriptions","organizations_url":"https://api.github.com/users/vladak/orgs","repos_url":"https://api.github.com/users/vladak/repos","events_url":"https://api.github.com/users/vladak/events{/privacy}","received_events_url":"https://api.github.com/users/vladak/received_events","type":"User","site_admin":false},"repo":{"id":8456538,"node_id":"MDEwOlJlcG9zaXRvcnk4NDU2NTM4","name":"OpenGrok","full_name":"vladak/OpenGrok","owner":{"login":"vladak","id":2934284,"node_id":"MDQ6VXNlcjI5MzQyODQ=","avatar_url":"https://avatars3.githubusercontent.com/u/2934284?v=4","gravatar_id":"","url":"https://api.github.com/users/vladak","html_url":"https://github.com/vladak","followers_url":"https://api.github.com/users/vladak/followers","following_url":"https://api.github.com/users/vladak/following{/other_user}","gists_url":"https://api.github.com/users/vladak/gists{/gist_id}","starred_url":"https://api.github.com/users/vladak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vladak/subscriptions","organizations_url":"https://api.github.com/users/vladak/orgs","repos_url":"https://api.github.com/users/vladak/repos","events_url":"https://api.github.com/users/vladak/events{/privacy}","received_events_url":"https://api.github.com/users/vladak/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/vladak/OpenGrok","description":"Main {OpenGrok git repository","fork":true,"url":"https://api.github.com/repos/vladak/OpenGrok","forks_url":"https://api.github.com/repos/vladak/OpenGrok/forks","keys_url":"https://api.github.com/repos/vladak/OpenGrok/keys{/key_id}","collaborators_url":"https://api.github.com/repos/vladak/OpenGrok/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/vladak/OpenGrok/teams","hooks_url":"https://api.github.com/repos/vladak/OpenGrok/hooks","issue_events_url":"https://api.github.com/repos/vladak/OpenGrok/issues/events{/number}","events_url":"https://api.github.com/repos/vladak/OpenGrok/events","assignees_url":"https://api.github.com/repos/vladak/OpenGrok/assignees{/user}","branches_url":"https://api.github.com/repos/vladak/OpenGrok/branches{/branch}","tags_url":"https://api.github.com/repos/vladak/OpenGrok/tags","blobs_url":"https://api.github.com/repos/vladak/OpenGrok/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/vladak/OpenGrok/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/vladak/OpenGrok/git/refs{/sha}","trees_url":"https://api.github.com/repos/vladak/OpenGrok/git/trees{/sha}","statuses_url":"https://api.github.com/repos/vladak/OpenGrok/statuses/{sha}","languages_url":"https://api.github.com/repos/vladak/OpenGrok/languages","stargazers_url":"https://api.github.com/repos/vladak/OpenGrok/stargazers","contributors_url":"https://api.github.com/repos/vladak/OpenGrok/contributors","subscribers_url":"https://api.github.com/repos/vladak/OpenGrok/subscribers","subscription_url":"https://api.github.com/repos/vladak/OpenGrok/subscription","commits_url":"https://api.github.com/repos/vladak/OpenGrok/commits{/sha}","git_commits_url":"https://api.github.com/repos/vladak/OpenGrok/git/commits{/sha}","comments_url":"https://api.github.com/repos/vladak/OpenGrok/comments{/number}","issue_comment_url":"https://api.github.com/repos/vladak/OpenGrok/issues/comments{/number}","contents_url":"https://api.github.com/repos/vladak/OpenGrok/contents/{+path}","compare_url":"https://api.github.com/repos/vladak/OpenGrok/compare/{base}...{head}","merges_url":"https://api.github.com/repos/vladak/OpenGrok/merges","archive_url":"https://api.github.com/repos/vladak/OpenGrok/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/vladak/OpenGrok/downloads","issues_url":"https://api.github.com/repos/vladak/OpenGrok/issues{/number}","pulls_url":"https://api.github.com/repos/vladak/OpenGrok/pulls{/number}","milestones_url":"https://api.github.com/repos/vladak/OpenGrok/milestones{/number}","notifications_url":"https://api.github.com/repos/vladak/OpenGrok/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/vladak/OpenGrok/labels{/name}","releases_url":"https://api.github.com/repos/vladak/OpenGrok/releases{/id}","deployments_url":"https://api.github.com/repos/vladak/OpenGrok/deployments","created_at":"2013-02-27T13:32:39Z","updated_at":"2018-05-28T09:09:07Z","pushed_at":"2018-05-31T09:18:18Z","git_url":"git://github.com/vladak/OpenGrok.git","ssh_url":"git@github.com:vladak/OpenGrok.git","clone_url":"https://github.com/vladak/OpenGrok.git","svn_url":"https://github.com/vladak/OpenGrok","homepage":null,"size":38476,"stargazers_count":1,"watchers_count":1,"language":"Java","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"oracle:master","ref":"master","sha":"38f7757331b514eb0f46906ebcfbfdbdc6b4128d","user":{"login":"oracle","id":4430336,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ0MzAzMzY=","avatar_url":"https://avatars1.githubusercontent.com/u/4430336?v=4","gravatar_id":"","url":"https://api.github.com/users/oracle","html_url":"https://github.com/oracle","followers_url":"https://api.github.com/users/oracle/followers","following_url":"https://api.github.com/users/oracle/following{/other_user}","gists_url":"https://api.github.com/users/oracle/gists{/gist_id}","starred_url":"https://api.github.com/users/oracle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/oracle/subscriptions","organizations_url":"https://api.github.com/users/oracle/orgs","repos_url":"https://api.github.com/users/oracle/repos","events_url":"https://api.github.com/users/oracle/events{/privacy}","received_events_url":"https://api.github.com/users/oracle/received_events","type":"Organization","site_admin":false},"repo":{"id":7481569,"node_id":"MDEwOlJlcG9zaXRvcnk3NDgxNTY5","name":"opengrok","full_name":"oracle/opengrok","owner":{"login":"oracle","id":4430336,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ0MzAzMzY=","avatar_url":"https://avatars1.githubusercontent.com/u/4430336?v=4","gravatar_id":"","url":"https://api.github.com/users/oracle","html_url":"https://github.com/oracle","followers_url":"https://api.github.com/users/oracle/followers","following_url":"https://api.github.com/users/oracle/following{/other_user}","gists_url":"https://api.github.com/users/oracle/gists{/gist_id}","starred_url":"https://api.github.com/users/oracle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/oracle/subscriptions","organizations_url":"https://api.github.com/users/oracle/orgs","repos_url":"https://api.github.com/users/oracle/repos","events_url":"https://api.github.com/users/oracle/events{/privacy}","received_events_url":"https://api.github.com/users/oracle/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/oracle/opengrok","description":"OpenGrok is a fast and usable source code search and cross reference engine, written in Java","fork":false,"url":"https://api.github.com/repos/oracle/opengrok","forks_url":"https://api.github.com/repos/oracle/opengrok/forks","keys_url":"https://api.github.com/repos/oracle/opengrok/keys{/key_id}","collaborators_url":"https://api.github.com/repos/oracle/opengrok/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/oracle/opengrok/teams","hooks_url":"https://api.github.com/repos/oracle/opengrok/hooks","issue_events_url":"https://api.github.com/repos/oracle/opengrok/issues/events{/number}","events_url":"https://api.github.com/repos/oracle/opengrok/events","assignees_url":"https://api.github.com/repos/oracle/opengrok/assignees{/user}","branches_url":"https://api.github.com/repos/oracle/opengrok/branches{/branch}","tags_url":"https://api.github.com/repos/oracle/opengrok/tags","blobs_url":"https://api.github.com/repos/oracle/opengrok/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/oracle/opengrok/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/oracle/opengrok/git/refs{/sha}","trees_url":"https://api.github.com/repos/oracle/opengrok/git/trees{/sha}","statuses_url":"https://api.github.com/repos/oracle/opengrok/statuses/{sha}","languages_url":"https://api.github.com/repos/oracle/opengrok/languages","stargazers_url":"https://api.github.com/repos/oracle/opengrok/stargazers","contributors_url":"https://api.github.com/repos/oracle/opengrok/contributors","subscribers_url":"https://api.github.com/repos/oracle/opengrok/subscribers","subscription_url":"https://api.github.com/repos/oracle/opengrok/subscription","commits_url":"https://api.github.com/repos/oracle/opengrok/commits{/sha}","git_commits_url":"https://api.github.com/repos/oracle/opengrok/git/commits{/sha}","comments_url":"https://api.github.com/repos/oracle/opengrok/comments{/number}","issue_comment_url":"https://api.github.com/repos/oracle/opengrok/issues/comments{/number}","contents_url":"https://api.github.com/repos/oracle/opengrok/contents/{+path}","compare_url":"https://api.github.com/repos/oracle/opengrok/compare/{base}...{head}","merges_url":"https://api.github.com/repos/oracle/opengrok/merges","archive_url":"https://api.github.com/repos/oracle/opengrok/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/oracle/opengrok/downloads","issues_url":"https://api.github.com/repos/oracle/opengrok/issues{/number}","pulls_url":"https://api.github.com/repos/oracle/opengrok/pulls{/number}","milestones_url":"https://api.github.com/repos/oracle/opengrok/milestones{/number}","notifications_url":"https://api.github.com/repos/oracle/opengrok/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/oracle/opengrok/labels{/name}","releases_url":"https://api.github.com/repos/oracle/opengrok/releases{/id}","deployments_url":"https://api.github.com/repos/oracle/opengrok/deployments","created_at":"2013-01-07T11:49:18Z","updated_at":"2018-05-30T09:56:54Z","pushed_at":"2018-05-31T09:18:21Z","git_url":"git://github.com/oracle/opengrok.git","ssh_url":"git@github.com:oracle/opengrok.git","clone_url":"https://github.com/oracle/opengrok.git","svn_url":"https://github.com/oracle/opengrok","homepage":"http://oracle.github.io/opengrok/","size":21978,"stargazers_count":2016,"watchers_count":2016,"language":"Java","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":422,"mirror_url":null,"archived":false,"open_issues_count":444,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":422,"open_issues":444,"watchers":2016,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/oracle/opengrok/pulls/2134"},"html":{"href":"https://github.com/oracle/opengrok/pull/2134"},"issue":{"href":"https://api.github.com/repos/oracle/opengrok/issues/2134"},"comments":{"href":"https://api.github.com/repos/oracle/opengrok/issues/2134/comments"},"review_comments":{"href":"https://api.github.com/repos/oracle/opengrok/pulls/2134/comments"},"review_comment":{"href":"https://api.github.com/repos/oracle/opengrok/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/oracle/opengrok/pulls/2134/commits"},"statuses":{"href":"https://api.github.com/repos/oracle/opengrok/statuses/d910e8636091d1cfd5549b071e8f20ce469cd0e4"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"tulinkry"}}