{"action":"created","issue":{"url":"https://api.github.com/repos/devtools-html/debugger.html/issues/6398","repository_url":"https://api.github.com/repos/devtools-html/debugger.html","labels_url":"https://api.github.com/repos/devtools-html/debugger.html/issues/6398/labels{/name}","comments_url":"https://api.github.com/repos/devtools-html/debugger.html/issues/6398/comments","events_url":"https://api.github.com/repos/devtools-html/debugger.html/issues/6398/events","html_url":"https://github.com/devtools-html/debugger.html/pull/6398","id":325843236,"number":6398,"title":"[breakpoints] switch Breakpoint to a PureComponent","user":{"login":"jasonLaster","id":254562,"avatar_url":"https://avatars1.githubusercontent.com/u/254562?v=4","gravatar_id":"","url":"https://api.github.com/users/jasonLaster","html_url":"https://github.com/jasonLaster","followers_url":"https://api.github.com/users/jasonLaster/followers","following_url":"https://api.github.com/users/jasonLaster/following{/other_user}","gists_url":"https://api.github.com/users/jasonLaster/gists{/gist_id}","starred_url":"https://api.github.com/users/jasonLaster/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasonLaster/subscriptions","organizations_url":"https://api.github.com/users/jasonLaster/orgs","repos_url":"https://api.github.com/users/jasonLaster/repos","events_url":"https://api.github.com/users/jasonLaster/events{/privacy}","received_events_url":"https://api.github.com/users/jasonLaster/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":6,"created_at":"2018-05-23T19:30:38Z","updated_at":"2018-05-24T19:32:49Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/devtools-html/debugger.html/pulls/6398","html_url":"https://github.com/devtools-html/debugger.html/pull/6398","diff_url":"https://github.com/devtools-html/debugger.html/pull/6398.diff","patch_url":"https://github.com/devtools-html/debugger.html/pull/6398.patch"},"body":"Fixes Issue: #5875\r\n\r\n### Summary of Changes\r\n\r\nThis PR builds on mappedBreakpoints, which pulled the bp logic into a selector, to finally pull the source logic out as well. The result is that the Breakpoints component is now *only* responsible for showing a list of bps and the poe checkobx. \r\n\r\nThe Breakpoint component now knows to re-render when its props change, but that is pretty safe. For example, we used to attempt to re-render a bp whenever a bp was added or removed, now the breakpoints are de-coupled and a bp will only re-render when it changes or one of its other props changes\r\n\r\nchanges:\r\n\r\n* switches to a PureComponent, which no longer needs shouldComponentUpdate\r\n* moves source grouping logic to a selector\r\n* replaces codemirror editor w/ runMode, which does inline syntax highlighting\r\n\r\n\r\n### Test Plan\r\n\r\nLets add some more unit tests\r\n\r\n### Screenshots\r\n\r\n#### New\r\n![screen shot 2018-05-23 at 3 28 52 pm](https://user-images.githubusercontent.com/254562/40446679-0787bd9a-5e9e-11e8-96f7-94c9b47bb859.png)\r\n\r\n#### Old\r\n![screen shot 2018-05-23 at 3 30 19 pm](https://user-images.githubusercontent.com/254562/40446737-3dd1d7b4-5e9e-11e8-9de2-c0e63501f5f4.png)\r\n"},"comment":{"url":"https://api.github.com/repos/devtools-html/debugger.html/issues/comments/391832730","html_url":"https://github.com/devtools-html/debugger.html/pull/6398#issuecomment-391832730","issue_url":"https://api.github.com/repos/devtools-html/debugger.html/issues/6398","id":391832730,"user":{"login":"darkwing","id":46655,"avatar_url":"https://avatars0.githubusercontent.com/u/46655?v=4","gravatar_id":"","url":"https://api.github.com/users/darkwing","html_url":"https://github.com/darkwing","followers_url":"https://api.github.com/users/darkwing/followers","following_url":"https://api.github.com/users/darkwing/following{/other_user}","gists_url":"https://api.github.com/users/darkwing/gists{/gist_id}","starred_url":"https://api.github.com/users/darkwing/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/darkwing/subscriptions","organizations_url":"https://api.github.com/users/darkwing/orgs","repos_url":"https://api.github.com/users/darkwing/repos","events_url":"https://api.github.com/users/darkwing/events{/privacy}","received_events_url":"https://api.github.com/users/darkwing/received_events","type":"User","site_admin":false},"created_at":"2018-05-24T19:32:48Z","updated_at":"2018-05-24T19:32:48Z","author_association":"CONTRIBUTOR","body":"OK, ignore me, looking at the index file now (weird that the index isn't showing in the tree), ToDo is kicked off before App is loaded and run, so it isn't showing the app.js file, which makes sense.  Sorry about my point 2, it's not applicable."}}
{"actor":{"display_login":"darkwing"}}