{"action":"created","issue":{"url":"https://api.github.com/repos/TEAMMATES/repo/issues/4417","labels_url":"https://api.github.com/repos/TEAMMATES/repo/issues/4417/labels{/name}","comments_url":"https://api.github.com/repos/TEAMMATES/repo/issues/4417/comments","events_url":"https://api.github.com/repos/TEAMMATES/repo/issues/4417/events","html_url":"https://github.com/TEAMMATES/repo/issues/4417","id":109339300,"number":4417,"title":"AdminEmailLogPage fails when there is a patch version","user":{"login":"wkurniawan07","id":7261051,"avatar_url":"https://avatars.githubusercontent.com/u/7261051?v=3","gravatar_id":"","url":"https://api.github.com/users/wkurniawan07","html_url":"https://github.com/wkurniawan07","followers_url":"https://api.github.com/users/wkurniawan07/followers","following_url":"https://api.github.com/users/wkurniawan07/following{/other_user}","gists_url":"https://api.github.com/users/wkurniawan07/gists{/gist_id}","starred_url":"https://api.github.com/users/wkurniawan07/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wkurniawan07/subscriptions","organizations_url":"https://api.github.com/users/wkurniawan07/orgs","repos_url":"https://api.github.com/users/wkurniawan07/repos","events_url":"https://api.github.com/users/wkurniawan07/events{/privacy}","received_events_url":"https://api.github.com/users/wkurniawan07/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/TEAMMATES/repo/labels/f.Admin","name":"f.Admin","color":"f4e0c7"},{"url":"https://api.github.com/repos/TEAMMATES/repo/labels/p.Medium","name":"p.Medium","color":"e19393"},{"url":"https://api.github.com/repos/TEAMMATES/repo/labels/t.Bug","name":"t.Bug","color":"E6E6E6"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-10-01T16:47:03Z","updated_at":"2015-10-10T01:21:55Z","closed_at":null,"body":"Due to line 119 in `AdminEmailLogPageAction`:\r\n`double curVersionAsDouble = Double.parseDouble(currentVersion);`\r\nIf the current version is in the format `major.minor.patch`, the parsing function will fail.\r\n\r\nTwo reasons I didn't resolve this in #4409:\r\n- This is not a testing defect but an app defect\r\n- The above is part of a function `getDefaultVersionIdsForQuery()`. I (or whoever's going to fix this) need to know the policy to use if there are patch versions.\r\n\r\nBackground: the currently used policy is like this:\r\n- current version is an `rc` version: only include that version\r\n- current version is a `major.minor` version: that version, along with 3 other before, e.g if the current version is 5.01, will include 5.00, 4.99, 4.98. This also I think is problematic because of bad assumptions that the minor version won't reach 3 digits (we have 4.100) and the last minor version before reaching a new major version is 99.\r\n- current version is a `major.minor.patch` version: unhandled!"},"comment":{"url":"https://api.github.com/repos/TEAMMATES/repo/issues/comments/147020259","html_url":"https://github.com/TEAMMATES/repo/issues/4417#issuecomment-147020259","issue_url":"https://api.github.com/repos/TEAMMATES/repo/issues/4417","id":147020259,"user":{"login":"damithc","id":1673303,"avatar_url":"https://avatars.githubusercontent.com/u/1673303?v=3","gravatar_id":"","url":"https://api.github.com/users/damithc","html_url":"https://github.com/damithc","followers_url":"https://api.github.com/users/damithc/followers","following_url":"https://api.github.com/users/damithc/following{/other_user}","gists_url":"https://api.github.com/users/damithc/gists{/gist_id}","starred_url":"https://api.github.com/users/damithc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damithc/subscriptions","organizations_url":"https://api.github.com/users/damithc/orgs","repos_url":"https://api.github.com/users/damithc/repos","events_url":"https://api.github.com/users/damithc/events{/privacy}","received_events_url":"https://api.github.com/users/damithc/received_events","type":"User","site_admin":false},"created_at":"2015-10-10T01:21:55Z","updated_at":"2015-10-10T01:21:55Z","body":"First, we can change the version numbering rules from now on: Always have 5 digits x.xx.xx\r\nNext, we can have a method to find the previous 3 versions by cross checking the existence of logs.\r\nIf the current version is 5.50.01, check for 5.50.00, 5.49.01. If any logs for 5.49.01 is found, then also check if 5.49.02. If 5.49.02 is found, also check for 5.49.03, and so on.\r\n\r\nAlso explore if it is possible to query GAE for deployed versions. There may be an API for it."}}