{"action":"created","issue":{"url":"https://api.github.com/repos/intermine/intermine/issues/1144","labels_url":"https://api.github.com/repos/intermine/intermine/issues/1144/labels{/name}","comments_url":"https://api.github.com/repos/intermine/intermine/issues/1144/comments","events_url":"https://api.github.com/repos/intermine/intermine/issues/1144/events","html_url":"https://github.com/intermine/intermine/pull/1144","id":106539251,"number":1144,"title":"Always add slash to id resolver path","user":{"login":"justinccdev","id":12761716,"avatar_url":"https://avatars.githubusercontent.com/u/12761716?v=3","gravatar_id":"","url":"https://api.github.com/users/justinccdev","html_url":"https://github.com/justinccdev","followers_url":"https://api.github.com/users/justinccdev/followers","following_url":"https://api.github.com/users/justinccdev/following{/other_user}","gists_url":"https://api.github.com/users/justinccdev/gists{/gist_id}","starred_url":"https://api.github.com/users/justinccdev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/justinccdev/subscriptions","organizations_url":"https://api.github.com/users/justinccdev/orgs","repos_url":"https://api.github.com/users/justinccdev/repos","events_url":"https://api.github.com/users/justinccdev/events{/privacy}","received_events_url":"https://api.github.com/users/justinccdev/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"julie-sullivan","id":1663057,"avatar_url":"https://avatars.githubusercontent.com/u/1663057?v=3","gravatar_id":"","url":"https://api.github.com/users/julie-sullivan","html_url":"https://github.com/julie-sullivan","followers_url":"https://api.github.com/users/julie-sullivan/followers","following_url":"https://api.github.com/users/julie-sullivan/following{/other_user}","gists_url":"https://api.github.com/users/julie-sullivan/gists{/gist_id}","starred_url":"https://api.github.com/users/julie-sullivan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/julie-sullivan/subscriptions","organizations_url":"https://api.github.com/users/julie-sullivan/orgs","repos_url":"https://api.github.com/users/julie-sullivan/repos","events_url":"https://api.github.com/users/julie-sullivan/events{/privacy}","received_events_url":"https://api.github.com/users/julie-sullivan/received_events","type":"User","site_admin":false},"milestone":null,"comments":1,"created_at":"2015-09-15T11:47:26Z","updated_at":"2015-09-16T16:13:39Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/intermine/intermine/pulls/1144","html_url":"https://github.com/intermine/intermine/pull/1144","diff_url":"https://github.com/intermine/intermine/pull/1144.diff","patch_url":"https://github.com/intermine/intermine/pull/1144.patch"},"body":"This is to alleviate an issue where the user may not do this (e.g. they just put \r\n\r\n```\r\nresolver.file.rootpath=/micklem/data/idresolver\r\n```\r\n\r\nin their mine.properties but then id resolution fails because the code was simply appending the specific id resolver file (e.g. /micklem/data/idresolverentrez instead of /micklem/data/idresolver/entrez).  The user may not notice this since not finding the file just prints a warning to the log and does not halt the build.\r\n\r\nI would have loved to have a badly configured path throw an exception to halt the build.  However, it struck me that a user may only have an ID resolver for some sources.  It may be correct for other sources to carry on if they cannot find a resolver because the file does not exist.  Whilst I see in the code there is a mechanism to ignore errors, the structure of the code means that it's not straightforward to stop 'not found file' errors being uncaught RuntimeExceptions anyway.\r\n\r\nIt looks like it will be difficult to do much about this unless things are changed so that individual bio sources have to explicitly say whether they want to use the ID resolver, in which case we can halt the build if it isn't found.  Personally, I think that would be better but it might be a big change.\r\n\r\nAlso, there's an awful lot of copy and paste between resolver classes which made these minor changes more difficult than they needed to be.  At some point, I think this should be refactored so that there's a single code path to reduce code complexity and the scope for bugs."},"comment":{"url":"https://api.github.com/repos/intermine/intermine/issues/comments/140791154","html_url":"https://github.com/intermine/intermine/pull/1144#issuecomment-140791154","issue_url":"https://api.github.com/repos/intermine/intermine/issues/1144","id":140791154,"user":{"login":"justinccdev","id":12761716,"avatar_url":"https://avatars.githubusercontent.com/u/12761716?v=3","gravatar_id":"","url":"https://api.github.com/users/justinccdev","html_url":"https://github.com/justinccdev","followers_url":"https://api.github.com/users/justinccdev/followers","following_url":"https://api.github.com/users/justinccdev/following{/other_user}","gists_url":"https://api.github.com/users/justinccdev/gists{/gist_id}","starred_url":"https://api.github.com/users/justinccdev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/justinccdev/subscriptions","organizations_url":"https://api.github.com/users/justinccdev/orgs","repos_url":"https://api.github.com/users/justinccdev/repos","events_url":"https://api.github.com/users/justinccdev/events{/privacy}","received_events_url":"https://api.github.com/users/justinccdev/received_events","type":"User","site_admin":false},"created_at":"2015-09-16T16:13:39Z","updated_at":"2015-09-16T16:13:39Z","body":"Travis failed on the usual occasional IntegrationWriterDataTrackingImplTest problems that we have been seeing but not on other tests.  On this occasion it hasn't annoyed me enough to spend time on trying to fix it."}}