Bug Submission Assistant : components interactions

The component interaction described by Kevin Hunter was implemented. The confusing attachment path was hidden from the user. The user agent is included in the bug description.

component interaction


When the list of components is first displayed, the comment area to the right is left empty and the select box on top shows (chose one).

Hovering on the component icon displays a green border and shows the corresponding comment to the right. The select box still shows (chose one) because no component has been selected yet.

When moving in the select list, the corresponding comment is displayed to the right.

When the component is chosen, either with the select list or by clicking on the icon, a blue border shows around the corresponding icon and the select list displays the component name.

After a component has been selected, hovering on the other icons displays the corresponding comment. But the selected component remains on top of the select box and with a blue border.

If the mouse leaves the area where the components icons are displayed, the comment to the right is set to the comment corresponding to the selected component.

removing fakepath

In chromium a spurious c:\fakepath is displayed in the text field associated to the file to be attached. This is a known problem that is only cosmetic and does not actually prevent the upload of the file. The leading c:\fakepath is removed from the path to avoid any confusion.

operating system


The user agent is included in the bug description. The user is prompted to provide more information about the platform in case it does not match the platform on which the browser used to report the bug is running. I will hopefully provide a sensible default and not require any action from the user.

IRC logs related to the above


(06:35:47 PM) hoonteke: is loic on here? anyone know his screen name?
(06:35:59 PM) hoonteke: (user-friendly bug report fella)
(06:37:50 PM) Sweetshark: dachary: ^^
(06:39:29 PM) dachary: hoonteke: yes, what can I do for you ?
(06:39:44 PM) hoonteke: dachary, ah, just submitting a bug report for ya, I think
(06:40:10 PM) hoonteke: dachary: I'm unable to attach a file to your user-friendly bug reporter. Is this yet known?
(06:40:16 PM) dachary: yerk
(06:40:20 PM) dachary: no it's not
(06:40:23 PM) dachary: let me try
(06:40:40 PM) dachary: hoonteke: I worked to "improve" it yesterday
(06:41:07 PM) hoonteke: When I attempt to on a Ubuntu 10.10 Chromium, the file I select in my file-chooser gets put in the dialog box as "C:\fakepath\file_name.txt"
(06:41:17 PM) hoonteke: which clearly makes no sense from a Linux machine.
(06:42:03 PM) dachary: hoonteke: indeed...
(06:42:32 PM) dachary: I just submitted https://bugassistant.libreoffice.org/show_bug.cgi?id=41565
(06:42:42 PM) dachary: so "it works for me"...
(06:42:48 PM) ***dachary thinking about what could be wrong
(06:42:56 PM) hoonteke: dachary: let me try again, maybe it was just a fluke
(06:44:03 PM) dachary: did you try to select a file to upload or did you not try after seeing this weird value ?
(06:44:11 PM) dachary: hoonteke: ^
(06:44:24 PM) hoonteke: I tried
(06:44:33 PM) hoonteke: and received this error in response: http://dpaste.org/6mEpz/
(06:44:40 PM) hoonteke: I'm now trying again ...
(06:44:49 PM) dachary: were you able to select a file from disk or not at all ?
(06:45:12 PM) dachary: oh !
(06:45:14 PM) dachary: 502 Bad Gateway
(06:45:36 PM) dachary: the reverse proxy sometime fails, this is unrelated
(06:45:43 PM) hoonteke: dachary: okie doke
(06:45:51 PM) dachary: it looks like you've been hit by *two* unrelated problems
(06:45:55 PM) dachary: lucky you :-)
(06:46:14 PM) hoonteke: dachary: :-) better me who can explain it to you than an unsuspecting, "ignant" user, yes?
(06:46:32 PM) hoonteke: alright, I just submitted a second bug report, which apparently is incorrect now
(06:46:40 PM) dachary: hoonteke: oooh yes ;-)
(06:47:02 PM) hoonteke: but, the path is still listed as "C:\fakepath\correct_file_name..." but it seems to have uploaded correctly
(06:47:02 PM) dachary: hoonteke: what's the number ?
(06:47:11 PM) hoonteke: heh, let me just collect that ...
(06:47:59 PM) dachary: hoonteke: what browser are you using ? chromium ? I wonder if this could be a case of auto-filling form fields.
(06:48:21 PM) dachary: But that does not account for the fact that C:\fakepath is unlikely to be found in your navigation history...
(06:48:33 PM) hoonteke: dachary: Okay, here's the first bug report that I filed with which I "found" the error to begin with: https://bugassistant.libreoffice.org/show_bug.cgi?id=41564
(06:48:35 PM) dachary: I just grepped the sources and found no trace of it
(06:48:57 PM) hoonteke: And here's the second one that is apparently incorrect: https://bugassistant.libreoffice.org/show_bug.cgi?id=41566
(06:49:10 PM) hoonteke: dachary: yeah, I can't explain fakepath ...
(06:49:36 PM) hoonteke: and this is the first web form that I've used that has had this kind of interaction.
(06:50:02 PM) dachary: you mean that kind of bug ?
(06:51:02 PM) hoonteke: yes, more accurately.
(06:51:22 PM) hoonteke: well, since it clearly works now, it's hard to call it anything more than a cosmetic bug
(06:51:26 PM) hoonteke: because it still shows fakepath
(06:51:31 PM) dachary: how can a windows file name end up on a ubuntu machine...
(06:51:41 PM) hoonteke: dachary: shall I screenshot /that/ to show you?
(06:51:49 PM) hoonteke: (but not in a bug report this time)
(06:52:02 PM) dachary: you mean that you still see the c:\ when you go back to the form ?
(06:52:03 PM) hoonteke: just via an http link over irc?
(06:52:13 PM) hoonteke: Well, it seems to be consistent
(06:52:22 PM) hoonteke: so I'll just "Create it afresh"
(06:52:22 PM) dachary: this is most extraodinary
(06:52:24 PM) hoonteke: just a sec
(06:52:36 PM) ***hoonteke bows
(06:52:42 PM) hoonteke: "at your service, sir Dachary"
(06:52:49 PM) dachary: :-)
(06:53:17 PM) dachary: there should be a special rating for the most puzzling bugs ;-)
(06:53:47 PM) dachary: the field that shows the path name is called "ignored"
(06:54:10 PM) dachary: I suppose it could call back a field value from the browser history
(06:54:16 PM) ***dachary trying with chromium himself
(06:55:05 PM) hoonteke: dachary: http://cs.earlham.edu/~kevin/tmp/fakepath_in_filepath_yet_apparently_uploads_correctly.png
(06:55:52 PM) dachary: I don't see it
(06:56:03 PM) ***dachary was hoping to hit the same bug somehow ;-)
(06:56:29 PM) hoonteke: hmm, maybe it's to do with a specific version of Chromium?
(06:56:38 PM) hoonteke: well, if it's just me, then it's not a big deal
(06:56:40 PM) dachary: hoonteke: I see the same as you now
(06:56:42 PM) dachary: ahahah
(06:56:45 PM) hoonteke: oh
(06:56:49 PM) dachary: hoonteke: congratulation !
(06:56:59 PM) hoonteke: I get most puzzling bug award?
(06:57:00 PM) dachary: it's a chromium bug
(06:57:03 PM) hoonteke: I'm so ... thrilled
(06:57:07 PM) dachary: well
(06:57:09 PM) hoonteke: well, actually I am thrilled now
(06:57:11 PM) dachary: not a bug
(06:57:16 PM) dachary: but a weirdness
(06:57:19 PM) dachary: for sure
(06:57:22 PM) hoonteke: is it just for "ignored" field names?
(06:57:24 PM) hoonteke: heh
(06:57:27 PM) dachary: I think not
(06:57:32 PM) hoonteke: no?
(06:57:44 PM) dachary: in order to style the upload file, I use a trick.
(06:58:03 PM) hoonteke: dachary: hey, whaddya know: http://meta.stackoverflow.com/questions/68471/the-image-uploader-shows-fakepath-as-path-when-using-chrome
(06:58:10 PM) hoonteke: GIMF, clearly
(06:58:12 PM) dachary: and I extract the content of the field to display it
(06:58:25 PM) dachary: hoonteke: here you go ;-)
(06:58:52 PM) dachary: hoonteke: I'll fix/workaround this. Thanks for the report :-)
(06:59:00 PM) hoonteke: no problem
(06:59:15 PM) hoonteke: really appreciate your efforts for an easier workflow for bug reporting
(06:59:44 PM) hoonteke: though Ubuntu gets lots of flack for various other decisions, I think their papercuts campaign is exactly on target
(06:59:54 PM) hoonteke: and I'd say the bug reporting mechanism falls under that category
(07:00:03 PM) hoonteke: historically speaking
(07:00:25 PM) hoonteke: /yes/ it's been functional so technically "get off my lawn" /could/ be an appropriate response to complaining users
(07:00:36 PM) hoonteke: but I think simple things like your workflow will help tremendously
(07:00:46 PM) hoonteke: so ... long story short: thanks
(07:00:55 PM) hoonteke: @dachary ^^
(07:01:39 PM) dachary: I appreciate your support, thanks :-)
(07:03:01 PM) dachary: The most difficult part for me is to get a list of things to implement to improve it. Bug reports are easy. I'm not good at designing a workflow and I depend on the input from more knowledgable people.
(07:03:41 PM) hoonteke: dachary: well, on that front, this bug report was meant for you on that front: https://bugassistant.libreoffice.org/show_bug.cgi?id=41564
(07:03:46 PM) hoonteke: suggestion only, of course
(07:05:06 PM) dachary: It makes sense and I'll implement it. I don't see why anyone would object.
(07:05:06 PM) hoonteke: dachary: in other news, I'd say that's the most difficult part of programming: knowing /what/ to program. So since "misery loves company", I'd say you're among friends on this channel. ;-)
(07:05:21 PM) dachary: :-D
(07:06:53 PM) hoonteke: dachary: should I make a bug report about handling more gracefully the "Bad Gateway" issue I encountered? It's not your fault, clearly, but more thoroughly explaining what happened and how to deal with it as an end-user would be good, methinks.
(07:07:26 PM) dachary: hoonteke: yes please and you can assign it directly to me loic@dachary.org
(07:07:32 PM) hoonteke: Will do
(07:08:19 PM) dachary: although I never faced the problem, I often had bad gateway on this server and I figure this will happen often enough to warrant a nice / special report / retry
(07:15:07 PM) hoonteke: dachary: heh, exactly my rational in the bug report: https://bugassistant.libreoffice.org/show_bug.cgi?id=41568
(07:15:17 PM) dachary: :-)
(07:15:43 PM) dachary: thanks !
(07:16:36 PM) hoonteke: dachary: another bug report, if you'd like? As visible in the screenshot of that last bug report (41568), the form appears to be too big for the containing div, as evidenced by the scrollbar down the side. It's not an issue per se, but if it's easily remedied ...
(07:17:01 PM) dachary: it is, I noticed it this afternoon an sighed
(07:17:04 PM) dachary: :-)
(07:17:18 PM) dachary: I'm not sure why it grew larger it's probably nothing much
(07:17:46 PM) hoonteke: alright, no bug report needed on that one. You're on top of it, and I've probably overwhelmed you just now
(07:17:47 PM) hoonteke: cheers
(07:18:08 PM) dachary: :-) I indeed already have it in my todo list.
(07:20:49 PM) hoonteke: dachary: another suggestion, which I can pose as a bug report if you'd like: I note that the workflow currently does not really make apparent the desire for the reporter to double check that a bug has not already been reported. There is the list of "Related bug reports" but it's after the Submit button, and /easily/ overlooked.
(07:21:14 PM) hoonteke: If you're looking for an example, I think Launchpad has a fairly decent workflow for an interaction that doesn't get in the way, yet still prompts the user for a quick double check of potentially related bug reports.
(07:21:17 PM) dachary: hoonteke: +1
(07:21:39 PM) dachary: and stackoverflow too (my favorite in that regard)
(07:21:50 PM) hoonteke: dachary: alright, so you already have that on the TODO list?
(07:21:59 PM) dachary: actually I don't
(07:22:10 PM) hoonteke: dachary: ah, then I'll make a bug report, assign to you?
(07:22:29 PM) dachary: because I don't know how to implement it and how it should look. I don't think I can do that on my own :-(
(07:23:32 PM) dachary: http://wiki.documentfoundation.org/Bug_Submission_Assistant#Specifications is where lots of ideas are stored
(07:23:41 PM) hoonteke: okay, so no bug report then
(07:23:53 PM) dachary: I hope that some day a consensus will emerge on what I should implement first ;-)
(07:24:13 PM) hoonteke: I think I know where the div is getting too big, btw: from the later-loaded "Related bug report" list
(07:24:13 PM) dachary: in the meantime I focus on bugs and critical useability issues but not improvements.
(07:24:32 PM) hoonteke: dachary: fair enough
(07:24:33 PM) dachary: hoonteke: thanks for the hint, makes sense ;-)
(07:25:13 PM) dachary: hoonteke: to be honest I'd be thrilled to work on the "related bug" implementation because I'm convinced it would make a huge difference.
(07:25:55 PM) dachary: however, mmeeks made a convincing case saying that the most critical aspect of bug reports is not the duplicates but the poor quality of the bug reports.
(07:26:25 PM) hoonteke: mmeeks: is not wrong, I think
(07:28:12 PM) dachary: I'm not sure if the assistant improved this yet. I notice a few positive aspects : the subcomponent is often filled and the description template is often used as a guide. For the rest I'm not sure. Maybe it decreased the precision of the bug report because the os version is not required.
(07:28:23 PM) hoonteke: dachary: some quick implementation thoughts from a stoopid consumer regarding the too-big "Related bugs" text
(07:28:23 PM) hoonteke: * perhaps further contain the "Related bug reports" in another div
(07:28:23 PM) hoonteke: * consider sanitizing to remove any   or
so that text can more easily wrap, or
(07:28:23 PM) hoonteke: * consider sanitizing by have a character limit on each report
(07:28:23 PM) hoonteke:
(07:29:08 PM) hoonteke: dachary: is a request for the OS not easily remedied?
(07:29:32 PM) hoonteke: (for varying definitions of "easily", I'm sure)
(07:29:51 PM) dachary: I thought about highlighting the words that are found in the short description of the bug and that also show in the related bugs.
(07:30:27 PM) dachary: hoonteke: the os is easy indeed and I'll do it shortly.
(07:32:13 PM) hoonteke: dachary: on that BugAssistant page, under the CSS/HTML integration header, are those links set within the iframe? Because my URL bar does not update through the stages. Is it supposed to?
(07:33:32 PM) ***dachary checking
(07:35:03 PM) dachary: I'm not sure what you mean. https://bugassistant.libreoffice.org/libreoffice/bug/bug.html?skin=login goes to the page that is included in http://www.libreoffice.org/get-help/bug/ but does not include it in an iframe.
(07:35:15 PM) dachary: What do you mean by "update through the stages" ?
(07:35:44 PM) dachary: hoonteke: ^
(07:37:16 PM) hoonteke: dachary: I'm just not sure what that part of the specification is asking for. When I'm browsing, as an end-user, the /get-help/ page, I start at stage 1. in which case behind the scenes, the arguments are ?skin=login
(07:37:29 PM) hoonteke: but what I think I just learned is that that's only behind the scenes
(07:37:47 PM) hoonteke: the front-facing, stoopid-user URL interface never changes, and is always at /get-help/, correct?
(07:42:27 PM) hoonteke: I'll take that as a yes, correct.
(07:47:09 PM) hoonteke: dachary: another suggestion: I wouldn't fetch the "Related bug reports" list until the user has entered a non-empty string in the "Subject" field, and then focused elsewhere. Currently the behavior seems to collect the bug list as soon as I've selected a sub-component, and then never updates, even after typing something into the Subject field
(07:48:43 PM) dachary: hoonteke: correct. My initial idea was to hide the list until it's necessary. A kind of read-ahead. But as it stands it's useless.
(07:50:31 PM) hoonteke: dachary: may I humbly suggest deactivating that particular functionality then, until consensus is reached on it, and/or you have the motivation to "just do it"? Seems frivolous to waste fdo bandwidth for a useless feature ...
(07:55:49 PM) hoonteke: alright, time for lunch ...
(08:28:35 PM) ***mmeeks is well pleased with dachary's effort so far: much better :-)
(08:28:45 PM) mmeeks: thanks for your help Loic :-)
(08:28:55 PM) ***mmeeks expects it is prolly more generally useful than just LibO as well but ...
(08:39:44 PM) dachary: mmeeks: :-)