jdiehl / brackets-debugger Goto Github PK
View Code? Open in Web Editor NEWDebugger for Brackets
Debugger for Brackets
Should we even record events that don't trigger event handlers in our code?
Maybe this should be a filter.
I mean the little x in the top right corner
They are not wrapped by a function, and so they don't have a tracepoint.
var foo = 42;
var bar = { foo: "hello" };
Hovering over foo: shows the value 42. If anything, "hello" should be shown (showing nothing would be appropriate, too)
The continue but should be disabled unless paused, vice versa for the pause button, maybe combine into one button
After fixing adobe/brackets#4404, I noticed that the ConsoleTab
DOM doesn't resize the editor correctly. We should update the panel UI to use the new Resizer
module.
Clear and breakpoints.
Create a new parsing tree.
Determine and set new tracepoints
Reset the user breakpoints at the correct locations
Maybe when hovering the function keyword, but also when hovering the function name (not applicable for anonymous functions)
Probably because we match by script ID instead of URL, and the script ID changes after the global object is cleared
Jonathan showed me all the new features in the debugger today -- very cool!
I tried to pull down the new version today (commit 6f11a50), but I get errors on launch (using master at the adobe/brackets@5247bf9224a commit).
Specifically, I get:
Uncaught Error: Module name 'LiveDevelopment/Agents/GotoAgent' has not been loaded yet for context: _
If I go back to bd63ffc it all works properly. But, none of the awesome new features are there. :-(
Any thoughts?
1: counter++;
2: $("#countValue").text(counter);
3:
4: test();
5: test();
I intentionally broke compatibility with Brackets via the package.json engine property. It's now limited to <0.20.0 (before the CodeMirror v3 upgrade).
Once issue #44 and related issues are resolved we should update this compatibility.
The live stuff should move to a dedicated branch
For DOMContentLoaded, prefix appears after reloading Brackets (with auto-connect), shortly after the load event gets its prefix, despite DOMContentLoaded appearing a second earlier than load. It does not appear when just reloading the page in the browser (Command-Shift-R).
For click (via $("#countButton")[0].click() in DOMContentLoaded handler) the <button#countButton> rarely ever appears, but if it appears, then when reloading Brackets, not when reloading the page in the browser.
For load, the prefix reliably appears regardless of the reloading type.
Disconnecting and reconnecting seems to behave just like reloading the page in the browser, suggesting something not being properly resetted that is in a proper state only after first starting Brackets.
I.e. when already showing a value and a new trace for it comes in, update the value (think counters)
Or when hovering a variable before the surrounding function gets called, show a popup with the value as soon as its covered by a trace
Example code:
1:
2: // init
3: $(function () { ... });
The debugger now sets the instrumentation breakpoint "timerFired" which is triggered both by setTimeout and setInterval.
In the resulting tree the second tracepoint's trace is shown as a child of the first one's - I think it shouldn't be shown at all.
Code to test:
window.setTimeout(function ping() {
console.log("ping");
}, 1000);
Runtime error when competing install:
Uncaught TypeError: Cannot call method 'addMenuItem' of null
This is due to adobe/brackets#4404. The extension init()
is called twice once during the auto init (via ExtensionLoader
) and again at APP_READY
.
A breakpoint in line X is generally in the column of the first non-whitespace character in line X, i.e. in a line with whitespace denoted by ".", code denoted by "+" and the cursor denoted by "|", Chrome would stop here:
....|++++
When editing the text like so (or anywhere after that):
....+
....+++
Chrome would stop in the same place:
....|+
....+++
When editing the text like so (or anywhere before that):
....
....++++
Chrome would move the breakpoint and stop there:
....
....|++++
CodeMirror's GutterMarker, however, will stay in the first line.
In fact, the gutter marker is only moved when inserting lines before the first character in the line with the gutter marker.
Also, the gutter marker is deleted when deleting the line break before the line it is in. Chrome will however then stop in the previous line. Chrome will only delete a breakpoint when both surrounding characters have been deleted.
I never pressed pause or anything like that, just connected normally, then reloaded, Brackets re-connected automatically, Chrome then pauses on the first tracepoint and I have to click Continue manually.
Hi!
I am a newbie at the beginning of learning to code.
I was debugging code in Chrome Developer Tools but since it breaks connection with Brackets, I was looking for some alternative which would work with Live Preview. And here I am.
After installing extension (to user's directory directly cause linking from disabled didn't want to work for some reason), in my Brackets, console of the extension appears. In the console there is blue text: [object Object]. When I click on the gutter unfortunatelly nothing happens. There is no breakpoint. Could you please help me to get brackets-debugger to work.
Just tried this with Brackets Sprint 14 and there seems to be a problem when launching a web page. The debugger UI all looks fine, but a couple of different web apps I tried seemed to hang on launch.
Let me know if you can't reproduce and I can post an example.
Same goes for deleting - sometimes.
Apparently they don't resolve until continuing execution, which surprises me.
Brackets sprint 27 crash on launch with the plugins, without all works fine.
OS : Windows7 64bits
Highlight the node in the DOM tree (in the browser), which is referenced by the variable that the user hovers the mouse over.
setMarker
and clearMarker
have been removed from the CodeMirror API. This breaks the debugger's breakpoints feature. See http://codemirror.net/doc/upgrade_v3.html#gutters.
Click a trace entry twice in quick succession (less than 1s apart). Only the first click will result in a flash. Oddly enough, the third, forth and so on will flash.
Steps to reproduce:
Result:
Expected:
I think watching for a scriptParsed
event from the debugger connection is the right way to go.
I actually have not seen this, but it will happen now that we address the PREs directly for highlighting. For big documents, there will be fewer PREs than lines.
Not all parts of the boot process are covered
On the plus side, breakpoints work! Cool!
The undefined should only be removed if the variable is local and the initial value at function start was undefined.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.