Firefox Debugger
mozilladevelopers.github.io
mozilladevelopers.github.io
That's one of the few nice/advanced features from Xcode and Safari, aside from making a breakpoint conditional you can:
* skip it the first n times (default: 0)
* make it non-breaking
* associate various actions which are executed if the breakpoint "triggers" (the condition matches) even if the breakpoint is non-breaking, in Safari these actions are "Log Message" (formatted plain text), "Evaluate" (arbitrary javascript code), "Play Sound" (beep on every tripping of the breakpoint) and "Probe Expression"[0]: https://webkit.org/blog/5435/breakpoint-options/
[0] a special kind of table logging which integrates with the debugger rather than the (separate) console tab
Granted, the UI isn't as clear about the capabilities, but I generally prefer "run JS, return true" over "choose one of N kinds of things to do", even if one of the N is "run JS, return true". Minus skip counters, those are a bit annoying by hand (needing globally unique var names and all).
I'm not sure when Firefox's built-in debugger got it, but I see search results implying they've been part of FireBug since 2007 at the very least. And I don't remember Chrome's debugger ever not having it (once they got their current-gen-like one, iirc it launched with extremely limited devtools?), though I could easily be forgetting the early days.
You can obviously do that in any browser, it's just inflexible, ugly, error-prone and inconvenient.
So UX/discovery-wise adding these features as advanced extensions of breakpoints is more sensible than breakpoints being a special case of tracepoints.
> Build, test, scale and more with the only browser built just for developers.
This is the only description I could find on their website. What's the difference to the normal version?
Pardon me if this is a silly question, but in the about:config page of Firefox Developer Edition the value for app.update.channel is aurora. But AFAIK, the aurora channel was stopped since April 18th of this month.
This is the screenshot : https://imgur.com/r5Kcqb3
Release <--- Beta <--- Aurora <--- Nightly
In 2014, we rebranded Aurora builds to "Developer Edition" to give it better visibility and ship experimental features that we thought would be interesting to web and add-on developers.Earlier this year, we sped up our time-to-release by removing Aurora from the pipeline, but we kept it as a separate channel roughly at parity with Beta:
Release <--- Beta <--- Nightly
Aurora <--'
Which is where things are today.The battery usage and Energy impact that I observed from Activity Monitor application in macOS was very surprising.
Both parameters were quite high and the battery was draining very quickly. I don't have the screenshot. I tried searching for a solution like tinkering the about:config fields etc. but couldn't find any.
(So the _channel_ didn't actually ever go away, it just changed which tree it drew from)
(Tree being synonymous with "code repository" throughout this comment)
The news about FF getting faster is just hitting the mainstream now but developer edition has had it for months, and I haven't suffered any noticeable bleeding edge issues (mostly because I'm not on nightly). This might have to do with my update cadence with arch (firefox-developer is in the AUR) but I think more likely it's the distance from nightly.
Anecdotally I find it to be just the blind amount of "bleeding edge" (others described it well, behind nightly but ahead of stable), and I am now lost whenever I try to debug anything in chrome.
Still curious about what's special about the dev edition.
some preconfigured dev-friendly things ? like more verbose logging ...
a separate release channel between nightly and stable ?
Being able to detect which function is the bottleneck is great, but being able to then figure out where the time is spent inside that function can be very enlightening too.
On Ubuntu, the debugger is started by using <CTRL><SHIFT>S (like Windows actually).
Maybe because the shortcuts will be (slightly) different across the various Linux desktops (desktop environments and Linux distributions). There is not one Linux desktop like there's one macOS or one Windows.
Linux is only used for Java based backends, when deploying into production.
With .NET deployments being done on IIS, even with .NET Core.
Some of the designers are using Photoshop on macOS.
Anecdote data.
Linux isn't just a distribution platform, it's also sensibly a development platform. I rather work on the system I'm building for if and when possible.
Edit:
I use .NET Core and while I have done it from Windows most of my time in the past few months, I also do code in .NET Core from Mac and Ubuntu (more Ubuntu than Mac). It works good enough so long as you use Visual Studio Code for debugging.
Will confess that most of it is scientific applications for the science and modeling team, which runs a mix, leaning towards Mac and Linux for... reasons, so dev work on Linux is better suited.
The "Business" side of the house uses C# and IIS on Windows.
Admin use Windows, Mac is rare.
I find it strange, in this day and age, being forced to use a single OS because "policy", especially when developing for an "open platform".
Example: https://support.cdn.mozilla.net/media/uploads/images/2016-09...
The coolest thing FF has over Chrome is the little [ev] icon next to an element that shows what events are connected to it. Saves me lots of time trying to track things down.
The coolest thing Chrome has over FF is that stepping through code is so much faster. There is no lag at all, while there is one in FF. It also has a "Search All" mode where it will look through all your code (html, js, css) to find a string.
This feature is called "Search Sources" in Firefox. https://imgur.com/U515D8X