{"action":"created","issue":{"url":"https://api.github.com/repos/mantisbt/mantisbt/issues/786","repository_url":"https://api.github.com/repos/mantisbt/mantisbt","labels_url":"https://api.github.com/repos/mantisbt/mantisbt/issues/786/labels{/name}","comments_url":"https://api.github.com/repos/mantisbt/mantisbt/issues/786/comments","events_url":"https://api.github.com/repos/mantisbt/mantisbt/issues/786/events","html_url":"https://github.com/mantisbt/mantisbt/pull/786","id":159852949,"number":786,"title":"User @ mentions improvements","user":{"login":"dregad","id":449891,"avatar_url":"https://avatars.githubusercontent.com/u/449891?v=3","gravatar_id":"","url":"https://api.github.com/users/dregad","html_url":"https://github.com/dregad","followers_url":"https://api.github.com/users/dregad/followers","following_url":"https://api.github.com/users/dregad/following{/other_user}","gists_url":"https://api.github.com/users/dregad/gists{/gist_id}","starred_url":"https://api.github.com/users/dregad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dregad/subscriptions","organizations_url":"https://api.github.com/users/dregad/orgs","repos_url":"https://api.github.com/users/dregad/repos","events_url":"https://api.github.com/users/dregad/events{/privacy}","received_events_url":"https://api.github.com/users/dregad/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2016-06-12T22:56:50Z","updated_at":"2016-06-13T00:08:48Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/mantisbt/mantisbt/pulls/786","html_url":"https://github.com/mantisbt/mantisbt/pull/786","diff_url":"https://github.com/mantisbt/mantisbt/pull/786.diff","patch_url":"https://github.com/mantisbt/mantisbt/pull/786.patch"},"body":"This PR covers the following changes\r\n\r\n- add new test case for, and fix [#21083](https://www.mantisbt.org/bugs/view.php?id=21083) \r\n- refactoring of unit tests to use a more efficient and easier to maintain data provider function approach\r\n- code cleanup\r\n- replace deprecated `<strike>` tag\r\n\r\nThe mentions parser in *mention_get_candidates()* has been simplified by going back to a regex approach which hopefully covers all the cases. This should also improve performance.\r\n\r\nThere is one failing unit test case: *MentionWithInvalidChars*; I did not fix it because I feel that the assertion is incorrect (i.e. IMO it should not fail), as discussed in https://github.com/mantisbt/mantisbt/commit/a9a20393d0ed765a72d69f0f68e536458748b894#commitcomment-17835719.\r\n\r\nEven though the test cases are OK from a phpUnit standpoint, there are still issues with the regex, as it does not play nice with some of them when used in a bugnote.\r\n\r\nSo this is still a work-in-progress, but I thought I'd share and get some feedback.\r\n"},"comment":{"url":"https://api.github.com/repos/mantisbt/mantisbt/issues/comments/225468428","html_url":"https://github.com/mantisbt/mantisbt/pull/786#issuecomment-225468428","issue_url":"https://api.github.com/repos/mantisbt/mantisbt/issues/786","id":225468428,"user":{"login":"vboctor","id":6446,"avatar_url":"https://avatars.githubusercontent.com/u/6446?v=3","gravatar_id":"","url":"https://api.github.com/users/vboctor","html_url":"https://github.com/vboctor","followers_url":"https://api.github.com/users/vboctor/followers","following_url":"https://api.github.com/users/vboctor/following{/other_user}","gists_url":"https://api.github.com/users/vboctor/gists{/gist_id}","starred_url":"https://api.github.com/users/vboctor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vboctor/subscriptions","organizations_url":"https://api.github.com/users/vboctor/orgs","repos_url":"https://api.github.com/users/vboctor/repos","events_url":"https://api.github.com/users/vboctor/events{/privacy}","received_events_url":"https://api.github.com/users/vboctor/received_events","type":"User","site_admin":false},"created_at":"2016-06-13T00:08:48Z","updated_at":"2016-06-13T00:08:48Z","body":"The key here is to have a comprehensive list of test cases.  Whenever we are not sure, I would be consistent with github.  The failing test case seems to be inconsistent with github, hence, I'm ok to remove it."}}
{"actor":{"display_login":"vboctor"}}