Closed Bug 1477596 Opened 7 years ago Closed 7 years ago

Show runtime information

Categories

(DevTools :: about:debugging, enhancement)

enhancement
Not set
normal

Tracking

(firefox63 fixed)

RESOLVED FIXED
Firefox 63
Tracking Status
firefox63 --- fixed

People

(Reporter: daisuke, Assigned: daisuke)

References

Details

Attachments

(3 files, 4 obsolete files)

This is the splitted bug of bug 1471795. In this, implement to show runtime information of selected runtime.
Blocks: 1477597
Blocks: 1477598
Blocks: 1477602
I'm sorry. Please let me update these patches since I found extra class and a place where it's better to use <section> instead of <div>. I'll update soon.
[Note: there is a lot of things I don't really like about my patch, but I figured I'd throw it here asap so that we can start discussing and taking decisions] As discussed with both of you I'd like us to pause for a moment and discuss architecture here. I uploaded another version of Daisuke's patch that try to rely more heavily on actions and reducers. So maybe we can compare the two and use this as a basis for our discussion. Before diving into code reviews, it feels like we need to agree on a few things here: - what goes into our state? - which actions do we need - component hierarchy 1/ What goes into our state In think we should have the concept of list of runtimes. We only have the local firefox runtime for now so we could also completely skip this. The other element we need is the selected runtime. That's where I am not sure how to organize things. The could simply have an id/pointer/whatever that allows us to find the selected runtime in the list of runtimes. But we could also have an object with more information. I think that what motivates this is that once you select a runtime, you need to retrieve more information. That's the approach I took here in order to exercise doing an async action (to get the runtime info in my patch). However I'd be fine with just storing an id/index allowing us to find the runtime in the list of runtimes. For now I don't think we need anything else in the state? 2/ Actions we need In theory we don't need any here, since nothing is dynamic! Again I'm using the patch to exercise a bit. So looking at what's coming, the list of runtimes will be updated and the selected runtime will also be able to be updated. So one action for each would make sense. Again I'd be fine with landing something with 0 actions here since we are not using any. 3/ Component hierarchy I admit I start being a bit confused between, the runtimes, the runtime info etc... Right now we have: App RuntimesPane RuntimeItem DebugTargetsPane RuntimeInfo What about App RuntimesList RuntimeItem RuntimeDetails RuntimeInfo (then below we will have RuntimeTargets I guess etc...) Or anything else, but the DebugTargetsPane in the middle is tripping me up!
Hi, I also added an alternative approach (it's easier to discuss around code!). It's similar to Julian's, the main differences are: - No use of `Runtime` / `ThisFirefox` objects - More explicit about how to handle async actions (dispatching subactions). Note that the failure state has not been covered (yet) - Use of an index to pass to the sidebar to select a runtime (although I don't have a hard preference about this one, as long as we are not repeating info already available somewhere else in the state). PS: Some stuff is a rough around the edges, sorry about that, but it's Friday and it's a bit late already :)
Attachment #8994080 - Attachment is obsolete: true
Attachment #8994080 - Flags: review?(jdescottes)
Attachment #8994080 - Flags: review?(balbeza)
Attachment #8994081 - Attachment is obsolete: true
Attachment #8994081 - Flags: review?(jdescottes)
Attachment #8994082 - Attachment is obsolete: true
Attachment #8994082 - Flags: review?(jdescottes)
Attachment #8994082 - Flags: review?(balbeza)
Attachment #8996910 - Flags: review?(balbeza)
Attachment #8996911 - Flags: review?(balbeza)
Clearing review flags for Belén, let's keep the reviews to 1 reviewer at the moment.
Comment on attachment 8996910 [details] Bug 1477596: Show runtime information. https://reviewboard.mozilla.org/r/260900/#review267958 ::: devtools/client/aboutdebugging-new/src/components/App.css:5 (Diff revision 1) > /* This Source Code Form is subject to the terms of the Mozilla Public > * License, v. 2.0. If a copy of the MPL was not distributed with this > * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ > > .app { We found it helpful in some devtools panels to add ascii art representations of the layout. Examples: https://searchfox.org/mozilla-central/rev/d0a0ae30d534dc55e712bd3eedc1b4553ba56323/devtools/client/application/src/components/App.css#38-49 https://searchfox.org/mozilla-central/rev/d0a0ae30d534dc55e712bd3eedc1b4553ba56323/devtools/client/application/src/components/Worker.css#5-16 https://searchfox.org/mozilla-central/rev/d0a0ae30d534dc55e712bd3eedc1b4553ba56323/devtools/client/themes/webconsole.css#495-520
Attachment #8996910 - Flags: review?(jdescottes) → review+
Comment on attachment 8996911 [details] Bug 1477596 - Part 2: Show runtime information for 'this firefox'. https://reviewboard.mozilla.org/r/260902/#review267956 I think we should fold both commits together, otherwise it's a bit strange to see an <article> being added in changeset1 without any title or content. ::: devtools/client/aboutdebugging-new/src/components/RuntimePage.js:16 (Diff revision 1) > + > +const Services = require("Services"); > + > class RuntimePage extends PureComponent { > render() { > - return dom.article(); > + return dom.article( I am unsure about using <article> here, while the <h> is in another component, and we don't have any content other than the title for now. We can revisit later.
Attachment #8996911 - Flags: review?(jdescottes) → review+
Attachment #8996911 - Attachment is obsolete: true
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 63
Blocks: 1446574
No longer blocks: remote-debugging-ng-m0
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: