{"action":"created","issue":{"url":"https://api.github.com/repos/mono/monodevelop/issues/1056","repository_url":"https://api.github.com/repos/mono/monodevelop","labels_url":"https://api.github.com/repos/mono/monodevelop/issues/1056/labels{/name}","comments_url":"https://api.github.com/repos/mono/monodevelop/issues/1056/comments","events_url":"https://api.github.com/repos/mono/monodevelop/issues/1056/events","html_url":"https://github.com/mono/monodevelop/pull/1056","id":107771641,"number":1056,"title":"Bug fix. Attach/Detach implementation in CorDebuggerSession","user":{"login":"nerzhulart","id":623624,"avatar_url":"https://avatars.githubusercontent.com/u/623624?v=3","gravatar_id":"","url":"https://api.github.com/users/nerzhulart","html_url":"https://github.com/nerzhulart","followers_url":"https://api.github.com/users/nerzhulart/followers","following_url":"https://api.github.com/users/nerzhulart/following{/other_user}","gists_url":"https://api.github.com/users/nerzhulart/gists{/gist_id}","starred_url":"https://api.github.com/users/nerzhulart/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nerzhulart/subscriptions","organizations_url":"https://api.github.com/users/nerzhulart/orgs","repos_url":"https://api.github.com/users/nerzhulart/repos","events_url":"https://api.github.com/users/nerzhulart/events{/privacy}","received_events_url":"https://api.github.com/users/nerzhulart/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":{"login":"DavidKarlas","id":774791,"avatar_url":"https://avatars.githubusercontent.com/u/774791?v=3","gravatar_id":"","url":"https://api.github.com/users/DavidKarlas","html_url":"https://github.com/DavidKarlas","followers_url":"https://api.github.com/users/DavidKarlas/followers","following_url":"https://api.github.com/users/DavidKarlas/following{/other_user}","gists_url":"https://api.github.com/users/DavidKarlas/gists{/gist_id}","starred_url":"https://api.github.com/users/DavidKarlas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DavidKarlas/subscriptions","organizations_url":"https://api.github.com/users/DavidKarlas/orgs","repos_url":"https://api.github.com/users/DavidKarlas/repos","events_url":"https://api.github.com/users/DavidKarlas/events{/privacy}","received_events_url":"https://api.github.com/users/DavidKarlas/received_events","type":"User","site_admin":false},"milestone":null,"comments":13,"created_at":"2015-09-22T18:24:36Z","updated_at":"2016-04-27T21:56:41Z","closed_at":"2016-04-26T13:00:39Z","pull_request":{"url":"https://api.github.com/repos/mono/monodevelop/pulls/1056","html_url":"https://github.com/mono/monodevelop/pull/1056","diff_url":"https://github.com/mono/monodevelop/pull/1056.diff","patch_url":"https://github.com/mono/monodevelop/pull/1056.patch"},"body":"The main points:\r\n* Extract Mono.Debugging.Win32 from Mono.Debug[ger].Win32 to get MonoDevelop independent API like Soft Debugger\r\n* Get rid of DynamicInvoke in Cor dispatcher (simplifies the code and debugging process)\r\n* Safe frames obtaining (COM exceptions are muted)\r\n* Module and type names for frame (were null before)\r\n* CorDebuggerSession Attach/Detach implementation\r\n* Running process enumeration via IClrMetahost which works properly also with .net 4+\r\n* Proper types caching in ObjectValueAdaptor which increases eval performance perfectly (before if passed identifier is not a type then all types were requested via COM, because there was no caching for non-type identifiers)\r\n* OverloadResolve fixed. It returns a pairs of method and CorType on which the method was found. It fixes the situation e.g. when we want call ToString of some user-defined enum: before we resolved method ToString on System.ValueType but tried to find this function by token in user assembly (using type.Class.Module)"},"comment":{"url":"https://api.github.com/repos/mono/monodevelop/issues/comments/215242158","html_url":"https://github.com/mono/monodevelop/pull/1056#issuecomment-215242158","issue_url":"https://api.github.com/repos/mono/monodevelop/issues/1056","id":215242158,"user":{"login":"nerzhulart","id":623624,"avatar_url":"https://avatars.githubusercontent.com/u/623624?v=3","gravatar_id":"","url":"https://api.github.com/users/nerzhulart","html_url":"https://github.com/nerzhulart","followers_url":"https://api.github.com/users/nerzhulart/followers","following_url":"https://api.github.com/users/nerzhulart/following{/other_user}","gists_url":"https://api.github.com/users/nerzhulart/gists{/gist_id}","starred_url":"https://api.github.com/users/nerzhulart/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nerzhulart/subscriptions","organizations_url":"https://api.github.com/users/nerzhulart/orgs","repos_url":"https://api.github.com/users/nerzhulart/repos","events_url":"https://api.github.com/users/nerzhulart/events{/privacy}","received_events_url":"https://api.github.com/users/nerzhulart/received_events","type":"User","site_admin":false},"created_at":"2016-04-27T21:56:41Z","updated_at":"2016-04-27T21:56:41Z","body":"Do you mind if I'll use JetBrains.Annotations to proper handle possible NREs in debugging code? Now there are tons of NRE because in most of cases null checks are missing, especially in CorDebug implementation."}}