payload: {"action":"created","issue":{"url":"https://api.github.com/repos/dotnet/roslyn/issues/33179","repository_url":"https://api.github.com/repos/dotnet/roslyn","labels_url":"https://api.github.com/repos/dotnet/roslyn/issues/33179/labels{/name}","comments_url":"https://api.github.com/repos/dotnet/roslyn/issues/33179/comments","events_url":"https://api.github.com/repos/dotnet/roslyn/issues/33179/events","html_url":"https://github.com/dotnet/roslyn/issues/33179","id":407402395,"node_id":"MDU6SXNzdWU0MDc0MDIzOTU=","number":33179,"title":"Avoid delegate captures for ConcurrentDictionary.AddOrUpdate","user":{"login":"Therzok","id":109974,"node_id":"MDQ6VXNlcjEwOTk3NA==","avatar_url":"https://avatars1.githubusercontent.com/u/109974?v=4","gravatar_id":"","url":"https://api.github.com/users/Therzok","html_url":"https://github.com/Therzok","followers_url":"https://api.github.com/users/Therzok/followers","following_url":"https://api.github.com/users/Therzok/following{/other_user}","gists_url":"https://api.github.com/users/Therzok/gists{/gist_id}","starred_url":"https://api.github.com/users/Therzok/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Therzok/subscriptions","organizations_url":"https://api.github.com/users/Therzok/orgs","repos_url":"https://api.github.com/users/Therzok/repos","events_url":"https://api.github.com/users/Therzok/events{/privacy}","received_events_url":"https://api.github.com/users/Therzok/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2019-02-06T19:51:09Z","updated_at":"2019-02-06T19:54:11Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"**Version Used**: \r\n3.0.0-beta2-19055-09\r\n\r\nConcurrentDictionary.AddOrUpdate is misused throughout the codebase. The anti-pattern seems to be:\r\n```csharp\r\nConcurrentDictionary<T1, T2> dictionary;\r\ndictionary.AddOrUpdate(key, value, (_1, _2) => value);\r\n```\r\n\r\nThe right usage would be:\r\n```\r\nConcurrentDictionary<T1, T2> dictionary;\r\ndictionary[key] = value;\r\n```\r\n\r\nMore info on this is in this commit: https://github.com/dotnet/roslyn/pull/33173/commits/2ac11675a1785bdb58c54369f8a6cbb3c529d50e"},"comment":{"url":"https://api.github.com/repos/dotnet/roslyn/issues/comments/461163845","html_url":"https://github.com/dotnet/roslyn/issues/33179#issuecomment-461163845","issue_url":"https://api.github.com/repos/dotnet/roslyn/issues/33179","id":461163845,"node_id":"MDEyOklzc3VlQ29tbWVudDQ2MTE2Mzg0NQ==","user":{"login":"CyrusNajmabadi","id":4564579,"node_id":"MDQ6VXNlcjQ1NjQ1Nzk=","avatar_url":"https://avatars3.githubusercontent.com/u/4564579?v=4","gravatar_id":"","url":"https://api.github.com/users/CyrusNajmabadi","html_url":"https://github.com/CyrusNajmabadi","followers_url":"https://api.github.com/users/CyrusNajmabadi/followers","following_url":"https://api.github.com/users/CyrusNajmabadi/following{/other_user}","gists_url":"https://api.github.com/users/CyrusNajmabadi/gists{/gist_id}","starred_url":"https://api.github.com/users/CyrusNajmabadi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CyrusNajmabadi/subscriptions","organizations_url":"https://api.github.com/users/CyrusNajmabadi/orgs","repos_url":"https://api.github.com/users/CyrusNajmabadi/repos","events_url":"https://api.github.com/users/CyrusNajmabadi/events{/privacy}","received_events_url":"https://api.github.com/users/CyrusNajmabadi/received_events","type":"User","site_admin":false},"created_at":"2019-02-06T19:54:11Z","updated_at":"2019-02-06T19:54:11Z","author_association":"CONTRIBUTOR","body":"@mavasani too."}}
other: {"actor":{"display_login":"CyrusNajmabadi"}}