## November 14th


[@jainsneha23], [@nyrosmith], [@Fischer-L], [@jasonLaster], [@sharathnarayanph], [@amitzur], [@James300], [@khal0988], [@yurydelendik], [@juliandescottes], [@borian], [@lukaszsobek], [@samuel-peers], [@arthur801031], [@jimblandy], [@ryanjduffy]

### Features


+ [[Editor] Pretty Printed files should disable certain Context Menu items ][4497] [@jainsneha23]
+ [[WASM] Display more wast text lines][4648] [@yurydelendik]
+ [[Editor] flash function when it is copied][4634] [@borian]

| Pretty Print Context Menus |
|--|
| ![4497-1] |

| Copying functions now flashes! |
|--|
| ![4634-0] |



### UI


+ [[Tabs] Hide scrollbar of Dropdown when no overflow][4675] [@Fischer-L]
+ [[Pause] call stack should not open automatically][4672] [@Fischer-L]
+ [[Pause] Frame count badge][4660] [@amitzur]

| Framework Frames now show the number of frames in the group |
|--|
| ![4660-0] |


### Performance

This week we landed the architectural performance work, which lets the debugger UI show initial pause data like pause line and frames, before fetching scopes and re-mapping locations.

We also landed a similar optimization where we no longer try to parse and traverse the files before showing the source text. Previously, the parser would block for up to 10 seconds while parsing large files. Yikes!

+ [Fix Console Hang][4653] [@jasonLaster]


### Infrastructure

We landed a large release last week and worked on our release automation scripts. Some improvements included: running a debugger-specific try run w/ 10 repeats, checking for bundle size changes on CI, to prevent unwanted deps from landing.

+ [11 10][4671] [@jasonLaster]
+ [Release (11-7) 2nd try][4670] [@jasonLaster]

### Testing

We're continuing to focus on mochitests as a mechanism for keeping regressions from entering and working confidently w/ the community. This week, we landed a mochitest for Previewing variables, and continued to add helpers to make it easy to write tests.

+ [Relax findSource][4657] [@jasonLaster]
+ [Breakpoint setting unit tests][4655] [@James300]
+ [Re-enable wasm test][4644] [@jasonLaster]
+ [Adds mk_add_options AUTOCLOBBER=1 to .mozconfig][4622] [@yurydelendik]
+ [Competing Scripts - break webpack][4606] [@jasonLaster]
+ [Preview mochitest][4603] [@samuel-peers]
+ [Add some additional helper methods][4585] [@jasonLaster]

### Code Health

This week was a big week for code health. We upgraded to flow 57, added license headers to all of our files, and switched to using object spread universally.

Also, in an effort to reduce our bundle size, we dropped react-immutable-proptypes and stopped using devtools-launchpad for showing context menus. We're now using the launchpad in just one spot and should be able to remove it soon. When we do, the bundle size will get 20% smaller!

+ [[Editor] Remove Breakpoint Editor management][4677] [@nyrosmith]
+ [Drop react-immutable-proptypes][4667] [@sharathnarayanph]
+ [Switch to devtools-contextmenu][4650] [@khal0988]
+ [Add small lint fixes][4646] [@jasonLaster]
+ [Fix flow ignore][4628] [@jasonLaster]
+ [bump bindings][4625] [@jasonLaster]
+ [Add a license header][4601] [@khal0988]
+ [[Flow] update to 57][4591] [@arthur801031]
+ [Replaces Object.assign with ... spread][4574] [@lukaszsobek]
+ [Fixes secondary pane css classes being localized][4611] [@lukaszsobek]

### accessibility

The students working on the debugger have made some progress on improving our accessibility.

+ [Specify the ids of the jump and the add-watch-expression menuitems][4674] [@Fischer-L]

### Preview

We landed 3 big fixes for preview this week. The craziest bug was an issue, which Ted Campbell filed, 6 weeks ago where clicking a link in the scopes pane would literally navigate you away from the debugger and to the page as opposed to opening a new tab. This of course is terrible, because the debugger is NOT a browser.

Another, important fix was with showing local scopes. Jim blandy fixed a bug, which was introduced in August where the frame finished variables like return and thrown were no longer being shown. We now have unit test and integration test coverage to catch this in the future! The tests are really great too :)

The last item, is more of a fun feature than anything else. But because we parse the original source text with babel, it was possible that you could hover on a function param, which has a flow type. Previously we would highlight the type as well, but now we're smarter and just highlight the param. Check out a video of how Jason fixed it!

+ [Stop rendering href attributes in String reps for URLs][4641] [@juliandescottes]
+ [[Preview] Exclude flow types from identifier locations][4590] [@jasonLaster]
+ [Fix display of return value / thrown exception in scopes][4569] [@jimblandy]

| The debugger is accidentally navigating away (OH NO) |
|--|
| ![4641-0] |


| Flow types are no longer highlighted |
|--|
| ![4590-0] |


| Return Values are shown in the local scope |
|--|
| ![4569-0] |


### Bug

There were some display irregularities in the panel, which were taken care of by Jason. While some of these issues were small like a border being slightly off and showing code behind the starting panel, they will likely be appreciated by anyone who was bothered by them!

+ [[WASM] Issue ADD_SCOPES even for wasm files.][4637] [@yurydelendik]
+ [Panel fixes][4598] [@jasonLaster]
+ [[Breakpoints] Handle Non-JS scripts in HTML source][4684] [@ryanjduffy]

| .. |
|--|
| ![4598-0] |

### Docs

We have added our release how-to to the docs! This way, more people will be able to create release bundles, and it will bring us closer to the goal of making regular, small releases 3-5 times a week. We also added some information about how to work with our spell-checker. The spell checker can be frustrating as it doesn’t recognize technology related works and framework names, and this sometimes causes our linter to complain. Now there is an easy to go to reference for it!

+ [Release the debugger][4633] [@jasonLaster]
+ [spell check docs][4627] [@jasonLaster]
+ [fix markdown lint][4626] [@jasonLaster]
+ [Add launchpad screenshot][4623] [@jasonLaster]

[4660-0]: https://user-images.githubusercontent.com/394320/32741130-db85b6a6-c8ad-11e7-9ab7-f0c9d741cc32.png
[4611-0]: https://user-images.githubusercontent.com/23530054/32481001-c4f81f62-c391-11e7-86f2-aa5ec83c39a4.png
[4598-0]: https://user-images.githubusercontent.com/254562/32421981-38d30334-c26b-11e7-8b48-c7ac84f0184b.png
[4591-0]: https://user-images.githubusercontent.com/4562118/32411716-8b997fa6-c21d-11e7-99ee-6764f1ea7da0.png
[4590-0]: https://user-images.githubusercontent.com/254562/32410584-9eb57a0a-c19a-11e7-92a1-c250c6a92743.png
[4497-1]: https://user-images.githubusercontent.com/254562/32790744-43b0d916-c92d-11e7-9e31-8ab0c7775271.png
[4634-0]: https://user-images.githubusercontent.com/254562/32583152-1a90b28e-c4c0-11e7-9931-897c1fb8a2e0.gif

[4569-0]: https://camo.githubusercontent.com/16ceaac735b54f7ec9320788dc249c25875c660e/687474703a2f2f672e7265636f726469742e636f2f6f38554e4f70364d71352e676966

[4641-0]: https://user-images.githubusercontent.com/1141550/32603742-2cf817c4-c54b-11e7-92ee-bba9d23c74d3.gif


[4497]: https://github.com/devtools-html/debugger.html/pull/4497
[4677]: https://github.com/devtools-html/debugger.html/pull/4677
[4675]: https://github.com/devtools-html/debugger.html/pull/4675
[4674]: https://github.com/devtools-html/debugger.html/pull/4674
[4672]: https://github.com/devtools-html/debugger.html/pull/4672
[4671]: https://github.com/devtools-html/debugger.html/pull/4671
[4670]: https://github.com/devtools-html/debugger.html/pull/4670
[4667]: https://github.com/devtools-html/debugger.html/pull/4667
[4660]: https://github.com/devtools-html/debugger.html/pull/4660
[4657]: https://github.com/devtools-html/debugger.html/pull/4657
[4655]: https://github.com/devtools-html/debugger.html/pull/4655
[4653]: https://github.com/devtools-html/debugger.html/pull/4653
[4650]: https://github.com/devtools-html/debugger.html/pull/4650
[4648]: https://github.com/devtools-html/debugger.html/pull/4648
[4646]: https://github.com/devtools-html/debugger.html/pull/4646
[4644]: https://github.com/devtools-html/debugger.html/pull/4644
[4641]: https://github.com/devtools-html/debugger.html/pull/4641
[4638]: https://github.com/devtools-html/debugger.html/pull/4638
[4637]: https://github.com/devtools-html/debugger.html/pull/4637
[4634]: https://github.com/devtools-html/debugger.html/pull/4634
[4633]: https://github.com/devtools-html/debugger.html/pull/4633
[4628]: https://github.com/devtools-html/debugger.html/pull/4628
[4627]: https://github.com/devtools-html/debugger.html/pull/4627
[4626]: https://github.com/devtools-html/debugger.html/pull/4626
[4625]: https://github.com/devtools-html/debugger.html/pull/4625
[4623]: https://github.com/devtools-html/debugger.html/pull/4623
[4622]: https://github.com/devtools-html/debugger.html/pull/4622
[4611]: https://github.com/devtools-html/debugger.html/pull/4611
[4606]: https://github.com/devtools-html/debugger.html/pull/4606
[4603]: https://github.com/devtools-html/debugger.html/pull/4603
[4601]: https://github.com/devtools-html/debugger.html/pull/4601
[4598]: https://github.com/devtools-html/debugger.html/pull/4598
[4591]: https://github.com/devtools-html/debugger.html/pull/4591
[4590]: https://github.com/devtools-html/debugger.html/pull/4590
[4585]: https://github.com/devtools-html/debugger.html/pull/4585
[4574]: https://github.com/devtools-html/debugger.html/pull/4574
[4569]: https://github.com/devtools-html/debugger.html/pull/4569
[4684]: https://github.com/devtools-html/debugger.html/pull/4684
[@jainsneha23]: https://github.com/jainsneha23
[@nyrosmith]: https://github.com/nyrosmith
[@Fischer-L]: https://github.com/Fischer-L
[@jasonLaster]: https://github.com/jasonLaster
[@sharathnarayanph]: https://github.com/sharathnarayanph
[@amitzur]: https://github.com/amitzur
[@James300]: https://github.com/James300
[@khal0988]: https://github.com/khal0988
[@yurydelendik]: https://github.com/yurydelendik
[@juliandescottes]: https://github.com/juliandescottes
[@borian]: https://github.com/borian
[@lukaszsobek]: https://github.com/lukaszsobek
[@samuel-peers]: https://github.com/samuel-peers
[@arthur801031]: https://github.com/arthur801031
[@jimblandy]: https://github.com/jimblandy
[@ryanjduffy]: https://github.com/ryanjduffy
