Xpra-org / xpra

Persistent remote applications for X11; screen sharing for X11, MacOS and MSWindows.
https://xpra.org/
GNU General Public License v2.0
1.9k stars 163 forks source link

bug reporting tool #627

Closed totaam closed 10 years ago

totaam commented 10 years ago

Issue migrated from trac ticket # 627

component: client | priority: minor | resolution: worksforme

2014-08-06 03:52:56: totaam created the issue


Should be able to run it standalone or launch it from the tray or session info dialog.

It should ask the user to describe the problem, then the user can select things to include in the bug report:

  • keyboard (keymap info, keyboard data from xpra info)
  • clipboard (not sure what... apart from xpra info)
  • performance (xpra info)
  • etc..

Then we can create a zip file and let the user save it (and later file a bug with it). Since 0.14.0 will be a LTS release, it makes sense to get this feature in. (shouldn't be too hard either)

totaam commented 10 years ago

2014-08-07 09:33:22: totaam uploaded file bug-report-tool.png (196.2 KiB)

screenshot of the bug report tool dialog and some other windows bug-report-tool.png

totaam commented 10 years ago

2014-08-07 09:33:54: totaam changed owner from antoine to afarr

totaam commented 10 years ago

2014-08-07 09:33:54: totaam commented


Mostly done in r7169: we can copy the bug report data to clipboard or to a zip file. As of r7172 we can include a screenshot in the zip file.

Later we might add the ability to automatically include:

  • snapshots of the xpra window buffers
  • more detailed runtime client data structures
  • a timer to capture the data or screenshot with the dialog hidden behind whatever is of interest etc

Comments and feedback welcome. (you can find it in the tray menu, or as Bug_Report.exe on win32 and Helpers/Bug_Report on osx)

Here's a screenshot:

[[Image(bug-report-tool.png)]]

totaam commented 10 years ago

2014-08-08 21:25:24: afarr commented


Testing with osx 0.14.0r7205 (with the patch tried for #507)... the Save button doesn't seem to work, and while the Copy to clipboard does, that might become awkward for a large amount of output.

Trying to save output (Save button, with just the OpenGL and Keyboard Mapping boxes checked) to ~/Desktop/xpra-dists (a folder on the desktop, obviously) I got the following error message:

2014-08-08 13:11:14,177 7382 characters copied to clipboard
/Users/afarr/Desktop/xpra-dists/xpra7205/Xpra.app/Contents/Resources/lib/python/xpra/gtk_common/gtk_util.py:432: GtkWarning: Attempting to store changes into `/Users/afarr/.local/share/recently-used.xbel', but failed: Failed to create file '/Users/afarr/.local/share/recently-used.xbel.SXUKKX': No such file or directory
/Users/afarr/Desktop/xpra-dists/xpra7205/Xpra.app/Contents/Resources/lib/python/xpra/gtk_common/gtk_util.py:432: GtkWarning: Attempting to set the permissions of `/Users/afarr/.local/share/recently-used.xbel', but failed: No such file or directory

Trying to save to ~/Desktop I get the following, similar, error message:

/Users/afarr/Desktop/xpra-dists/xpra7205/Xpra.app/Contents/Resources/lib/python/xpra/gtk_common/gtk_util.py:432: GtkWarning: Attempting to store changes into `/Users/afarr/.local/share/recently-used.xbel', but failed: Failed to create file '/Users/afarr/.local/share/recently-used.xbel.12YNKX': No such file or directory

Copying to clipboard seemed to work, allowing me to paste the following, which doesn't seem to recognize that the --opengl=on flag had been used to override the blacklisting (OpenGL was indeed on, according to the Session Info):

Description: 
Clipboard is funky

OpenGL: OpenGL driver and features
vendor 'Intel Inc.' is blacklisted!

Keyboard Mapping: Keyboard layout and key mapping
[(97, 'a', 0, 0, 0), (65, 'A', 0, 0, 1), (229, 'aring', 0, 1, 0), (197, 'Aring', 0, 1, 1), (115, 's', 1, 0, 0), (83, 'S', 1, 0, 1), (223, 'ssharp', 1, 1, 0), (205, 'Iacute', 1, 1, 1), (100, 'd', 2, 0, 0), (68, 'D', 2, 0, 1), (2287, 'partialderivative', 2, 1, 0), (206, 'Icircumflex', 2, 1, 1), (102, 'f', 3, 0, 0), (70, 'F', 3, 0, 1), (2294, 'function', 3, 1, 0), (207, 'Idiaeresis', 3, 1, 1), (104, 'h', 4, 0, 0), (72, 'H', 4, 0, 1), (511, 'abovedot', 4, 1, 0), (211, 'Oacute', 4, 1, 1), (103, 'g', 5, 0, 0), (71, 'G', 5, 0, 1), (169, 'copyright', 5, 1, 0), (445, 'doubleacute', 5, 1, 1), (122, 'z', 6, 0, 0), (90, 'Z', 6, 0, 1), (2009, 'Greek_OMEGA', 6, 1, 0), (184, 'cedilla', 6, 1, 1), (120, 'x', 7, 0, 0), (88, 'X', 7, 0, 1), (16785992, 'U+2248', 7, 1, 0), (434, 'ogonek', 7, 1, 1), (99, 'c', 8, 0, 0), (67, 'C', 8, 0, 1), (231, 'ccedilla', 8, 1, 0), (199, 'Ccedilla', 8, 1, 1), (118, 'v', 9, 0, 0), (86, 'V', 9, 0, 1), (2262, 'radical', 9, 1, 0), (16786890, 'U+25CA', 9, 1, 1), (167, 'section', 10, 0, 0), (177, 'plusminus', 10, 0, 1), (98, 'b', 11, 0, 0), (66, 'B', 11, 0, 1), (2239, 'integral', 11, 1, 0), (697, 'idotless', 11, 1, 1), (113, 'q', 12, 0, 0), (81, 'Q', 12, 0, 1), (5053, 'oe', 12, 1, 0), (5052, 'OE', 12, 1, 1), (119, 'w', 13, 0, 0), (87, 'W', 13, 0, 1), (16785937, 'U+2211', 13, 1, 0), (2814, 'doublelowquotemark', 13, 1, 1), (101, 'e', 14, 0, 0), (69, 'E', 14, 0, 1), (65105, 'dead_acute', 14, 1, 0), (180, 'acute', 14, 1, 1), (114, 'r', 15, 0, 0), (82, 'R', 15, 0, 1), (174, 'registered', 15, 1, 0), (16785456, 'U+2030', 15, 1, 1), (121, 'y', 16, 0, 0), (89, 'Y', 16, 0, 1), (165, 'yen', 16, 1, 0), (193, 'Aacute', 16, 1, 1), (116, 't', 17, 0, 0), (84, 'T', 17, 0, 1), (2801, 'dagger', 17, 1, 0), (439, 'caron', 17, 1, 1), (49, '1', 18, 0, 0), (33, 'exclam', 18, 0, 1), (161, 'exclamdown', 18, 1, 0), (16785476, 'U+2044', 18, 1, 1), (50, '2', 19, 0, 0), (64, 'at', 19, 0, 1), (2761, 'trademark', 19, 1, 0), (8364, 'EuroSign', 19, 1, 1), (51, '3', 20, 0, 0), (35, 'numbersign', 20, 0, 1), (163, 'sterling', 20, 1, 0), (16785465, 'U+2039', 20, 1, 1), (52, '4', 21, 0, 0), (36, 'dollar', 21, 0, 1), (162, 'cent', 21, 1, 0), (16785466, 'U+203A', 21, 1, 1), (54, '6', 22, 0, 0), (94, 'asciicircum', 22, 0, 1), (167, 'section', 22, 1, 0), (16841474, 'U+FB02', 22, 1, 1), (53, '5', 23, 0, 0), (37, 'percent', 23, 0, 1), (2242, 'infinity', 23, 1, 0), (16841473, 'U+FB01', 23, 1, 1), (61, 'equal', 24, 0, 0), (43, 'plus', 24, 0, 1), (2237, 'notequal', 24, 1, 0), (177, 'plusminus', 24, 1, 1), (57, '9', 25, 0, 0), (40, 'parenleft', 25, 0, 1), (170, 'ordfeminine', 25, 1, 0), (183, 'periodcentered', 25, 1, 1), (55, '7', 26, 0, 0), (38, 'ampersand', 26, 0, 1), (182, 'paragraph', 26, 1, 0), (2802, 'doubledagger', 26, 1, 1), (45, 'minus', 27, 0, 0), (95, 'underscore', 27, 0, 1), (2730, 'endash', 27, 1, 0), (2729, 'emdash', 27, 1, 1), (56, '8', 28, 0, 0), (42, 'asterisk', 28, 0, 1), (2790, 'enfilledcircbullet', 28, 1, 0), (176, 'degree', 28, 1, 1), (48, '0', 29, 0, 0), (41, 'parenright', 29, 0, 1), (186, 'masculine', 29, 1, 0), (2813, 'singlelowquotemark', 29, 1, 1), (93, 'bracketright', 30, 0, 0), (125, 'braceright', 30, 0, 1), (2768, 'leftsinglequotemark', 30, 1, 0), (2769, 'rightsinglequotemark', 30, 1, 1), (111, 'o', 31, 0, 0), (79, 'O', 31, 0, 1), (248, 'oslash', 31, 1, 0), (216, 'Ooblique', 31, 1, 1), (117, 'u', 32, 0, 0), (85, 'U', 32, 0, 1), (65111, 'dead_diaeresis', 32, 1, 0), (168, 'diaeresis', 32, 1, 1), (91, 'bracketleft', 33, 0, 0), (123, 'braceleft', 33, 0, 1), (2770, 'leftdoublequotemark', 33, 1, 0), (2771, 'rightdoublequotemark', 33, 1, 1), (105, 'i', 34, 0, 0), (73, 'I', 34, 0, 1), (65106, 'dead_circumflex', 34, 1, 0), (16777926, 'U+02C6', 34, 1, 1), (112, 'p', 35, 0, 0), (80, 'P', 35, 0, 1), (2032, 'Greek_pi', 35, 1, 0), (16785935, 'U+220F', 35, 1, 1), (65293, 'Return', 36, 0, 0), (108, 'l', 37, 0, 0), (76, 'L', 37, 0, 1), (172, 'notsign', 37, 1, 0), (210, 'Ograve', 37, 1, 1), (106, 'j', 38, 0, 0), (74, 'J', 38, 0, 1), (16785926, 'U+2206', 38, 1, 0), (212, 'Ocircumflex', 38, 1, 1), (39, 'apostrophe', 39, 0, 0), (34, 'quotedbl', 39, 0, 1), (230, 'ae', 39, 1, 0), (198, 'AE', 39, 1, 1), (107, 'k', 40, 0, 0), (75, 'K', 40, 0, 1), (16777946, 'U+02DA', 40, 1, 0), (16840959, 'U+F8FF', 40, 1, 1), (59, 'semicolon', 41, 0, 0), (58, 'colon', 41, 0, 1), (2734, 'ellipsis', 41, 1, 0), (218, 'Uacute', 41, 1, 1), (92, 'backslash', 42, 0, 0), (124, 'bar', 42, 0, 1), (171, 'guillemotleft', 42, 1, 0), (187, 'guillemotright', 42, 1, 1), (44, 'comma', 43, 0, 0), (60, 'less', 43, 0, 1), (2236, 'lessthanequal', 43, 1, 0), (175, 'macron', 43, 1, 1), (47, 'slash', 44, 0, 0), (63, 'question', 44, 0, 1), (247, 'division', 44, 1, 0), (191, 'questiondown', 44, 1, 1), (110, 'n', 45, 0, 0), (78, 'N', 45, 0, 1), (65107, 'dead_tilde', 45, 1, 0), (16777948, 'U+02DC', 45, 1, 1), (109, 'm', 46, 0, 0), (77, 'M', 46, 0, 1), (181, 'mu', 46, 1, 0), (194, 'Acircumflex', 46, 1, 1), (46, 'period', 47, 0, 0), (62, 'greater', 47, 0, 1), (2238, 'greaterthanequal', 47, 1, 0), (418, 'breve', 47, 1, 1), (65289, 'Tab', 48, 0, 0), (65056, 'ISO_Left_Tab', 48, 0, 1), (65289, 'Tab', 48, 1, 0), (32, 'space', 49, 0, 0), (160, 'nobreakspace', 49, 1, 0), (96, 'grave', 50, 0, 0), (126, 'asciitilde', 50, 0, 1), (65104, 'dead_grave', 50, 1, 0), (96, 'grave', 50, 1, 1), (65288, 'BackSpace', 51, 0, 0), (65293, 'Return', 52, 0, 0), (65307, 'Escape', 53, 0, 0), (65512, 'Meta_R', 54, 0, 0), (65511, 'Meta_L', 55, 0, 0), (65505, 'Shift_L', 56, 0, 0), (65509, 'Caps_Lock', 57, 0, 0), (65513, 'Alt_L', 58, 0, 0), (65507, 'Control_L', 59, 0, 0), (65506, 'Shift_R', 60, 0, 0), (65514, 'Alt_R', 61, 0, 0), (65508, 'Control_R', 62, 0, 0), (65454, 'KP_Decimal', 65, 0, 0), (65363, 'Right', 66, 0, 0), (42, 'asterisk', 66, 0, 1), (65450, 'KP_Multiply', 67, 0, 0), (65451, 'KP_Add', 69, 0, 0), (65361, 'Left', 70, 0, 0), (43, 'plus', 70, 0, 1), (65307, 'Escape', 71, 0, 0), (65364, 'Down', 72, 0, 0), (61, 'equal', 72, 0, 1), (65455, 'KP_Divide', 75, 0, 0), (65421, 'KP_Enter', 76, 0, 0), (65362, 'Up', 77, 0, 0), (47, 'slash', 77, 0, 1), (65453, 'KP_Subtract', 78, 0, 0), (65469, 'KP_Equal', 81, 0, 0), (65456, 'KP_0', 82, 0, 0), (65457, 'KP_1', 83, 0, 0), (65458, 'KP_2', 84, 0, 0), (65459, 'KP_3', 85, 0, 0), (65460, 'KP_4', 86, 0, 0), (65461, 'KP_5', 87, 0, 0), (65462, 'KP_6', 88, 0, 0), (65463, 'KP_7', 89, 0, 0), (65464, 'KP_8', 91, 0, 0), (65465, 'KP_9', 92, 0, 0), (65474, 'F5', 96, 0, 0), (65475, 'F6', 97, 0, 0), (65476, 'F7', 98, 0, 0), (65472, 'F3', 99, 0, 0), (65477, 'F8', 100, 0, 0), (65478, 'F9', 101, 0, 0), (16777232, 'U+0010', 102, 0, 0), (65480, 'F11', 103, 0, 0), (16777232, 'U+0010', 104, 0, 0), (65482, 'F13', 105, 0, 0), (65485, 'F16', 106, 0, 0), (65483, 'F14', 107, 0, 0), (16777232, 'U+0010', 108, 0, 0), (65479, 'F10', 109, 0, 0), (16777232, 'U+0010', 110, 0, 0), (65481, 'F12', 111, 0, 0), (16777232, 'U+0010', 112, 0, 0), (65484, 'F15', 113, 0, 0), (16777221, 'U+0005', 114, 0, 0), (65360, 'Home', 115, 0, 0), (65365, 'Page_Up', 116, 0, 0), (65535, 'Delete', 117, 0, 0), (65473, 'F4', 118, 0, 0), (65367, 'End', 119, 0, 0), (65471, 'F2', 120, 0, 0), (65366, 'Page_Down', 121, 0, 0), (65470, 'F1', 122, 0, 0), (65361, 'Left', 123, 0, 0), (65363, 'Right', 124, 0, 0), (65364, 'Down', 125, 0, 0), (65362, 'Up', 126, 0, 0)]
totaam commented 10 years ago

2014-08-08 21:27:13: afarr commented


Upon disconnecting the client, I also got the following error message (in case it helps):

2014-08-08 13:25:45,944 error on <class 'xpra.platform.darwin.gui.ClientExtras'> cleanup
Traceback (most recent call last):
  File "/Users/spikesinc/gtk/inst/lib/python2.7/site-packages/xpra/client/ui_client_base.py", line 332, in cleanup
  File "/Users/spikesinc/gtk/inst/lib/python2.7/site-packages/xpra/platform/darwin/gui.py", line 163, in cleanup
  File "/Users/spikesinc/gtk/inst/lib/python2.7/site-packages/xpra/platform/darwin/gui.py", line 166, in stop_event_loop
AttributeError: 'ClientExtras' object has no attribute 'notificationCenter'
/Users/afarr/Desktop/xpra-dists/xpra7205/Xpra.app/Contents/Resources/lib/python/xpra/gtk_common/gtk2common.py:15: GtkWarning: Attempting to store changes into `/Users/afarr/.local/share/recently-used.xbel', but failed: Failed to create file '/Users/afarr/.local/share/recently-used.xbel.TPECKX': No such file or directory
/Users/afarr/Desktop/xpra-dists/xpra7205/Xpra.app/Contents/Resources/lib/python/xpra/gtk_common/gtk2common.py:15: GtkWarning: Attempting to set the permissions of `/Users/afarr/.local/share/recently-used.xbel', but failed: No such file or directory
2014-08-08 13:25:46,245 error on <class 'xpra.platform.darwin.gui.ClientExtras'> cleanup
Traceback (most recent call last):
  File "/Users/spikesinc/gtk/inst/lib/python2.7/site-packages/xpra/client/ui_client_base.py", line 332, in cleanup
  File "/Users/spikesinc/gtk/inst/lib/python2.7/site-packages/xpra/platform/darwin/gui.py", line 163, in cleanup
  File "/Users/spikesinc/gtk/inst/lib/python2.7/site-packages/xpra/platform/darwin/gui.py", line 166, in stop_event_loop
AttributeError: 'ClientExtras' object has no attribute 'notificationCenter'
totaam commented 10 years ago

2014-08-09 05:40:37: totaam commented


I got the following error message [[BR]] But.. did it work? I also get this warning and the file does get saved.

Can you please also check the presence and permissions on ~/.local and ~/.local/share with ls -l. This looks like a harmless GTK bug.

[[BR]]

.. which doesn't seem to recognize that the --opengl=on .. [[BR]] Should be fixed in r7209.

[[BR]]

Upon disconnecting the client, I also got the following error message.. [[BR]] That's because this build seems to be missing AppKit. Was this one of my beta builds or one of yours? r7210 will now fail more gracefully in this case, but this should be fixed in the build / packaging. (added info to #533)

totaam commented 10 years ago

2014-08-11 20:53:21: afarr commented


In the last test, it worked to save contents to clipboard, but the Save button didn't seem to work.

  • Checking the system, I find that there is no ~/.local directory ... which might have been the whole of the problem. (Should xpra create such a directory on osx? Should the attempt to write something there create it? The dot-files on osx tend to be hidden, and I thought they generally require admin privileges, or a password, to access.)

Unfortunately, with 0.14.0-r7232, when I tried to check the recognition of the --opengl=on, I got the following error when clicking the Bug Report link:

Traceback (most recent call last):
  File "/Users/MacAdmin/gtk/inst/lib/python2.7/site-packages/xpra/client/gtk_base/gtk_client_base.py", line 112, in init_bug_report
  File "/Users/MacAdmin/gtk/inst/lib/python2.7/site-packages/xpra/client/gtk_base/bug_report.py", line 146, in init
UnboundLocalError: local variable 'get_net_info' referenced before assignment

... and the Bug Report window doesn't open.

Clicking the link again creates an essentially empty window (I'll attach a screenshot, to be thorough).

  • The version I tested last time was one of our builds. The r-7232 in this attempt is your beta build.
totaam commented 10 years ago

2014-08-11 20:54:10: afarr uploaded file ticket627-bug_report_tool-osx_r7232.png (15.6 KiB)

osx r-7232 broken Bug Report tool ticket627-bug_report_tool-osx_r7232.png

totaam commented 10 years ago

2014-08-12 04:28:23: totaam commented


but the Save button didn't seem to work. [[BR]] Seem to? Please see comment:4


when I tried to check the recognition of the --opengl=on, I got the following error ... [BR]] Ooops, fixed in r7257.

New beta build with this fix uploaded.

totaam commented 10 years ago

2014-08-13 20:47:09: afarr commented


  • Testing again with osx 0.14.0-r7257 vs. fedora 20 0.14.0-r7189.

The Save button (saving to Desktop) is working, but behaving oddly.

An icon with the name corresponding to the title of the saved bug report appears on the desktop, but clicking on it, rather than "opening" it, results in the creation of a folder with all the information (and the icon remains). Clicking on the icon repeatedly - repeatedly opens more folders with an incremented number version (2, 3, etc.) each containing the same contents.

Meanwhile, the client still outputs the following warnings:

/Users/afarr/Desktop/xpra-dists/xpraAnt7257/Xpra.app/Contents/Resources/lib/python/xpra/gtk_common/gtk2common.py:15: GtkWarning: Attempting to store changes into `/Users/afarr/.local/share/recently-used.xbel', but failed: Failed to create file '/Users/afarr/.local/share/recently-used.xbel.GWZCKX': No such file or directory
/Users/afarr/Desktop/xpra-dists/xpraAnt7257/Xpra.app/Contents/Resources/lib/python/xpra/gtk_common/gtk2common.py:15: GtkWarning: Attempting to set the permissions of `/Users/afarr/.local/share/recently-used.xbel', but failed: No such file or directory

... apparently osx tries to save to the "recently-used" folder whether or not that is chosen as the save location.

I'll attach some screenshots which should clarify a little bit.

totaam commented 10 years ago

2014-08-13 20:49:35: afarr uploaded file bug_report_save_to_desktop.png (66.5 KiB)

Trying to save a bugreport to desktop bug_report_save_to_desktop.png

totaam commented 10 years ago

2014-08-13 20:51:04: afarr uploaded file bug_report_file_create_bug.png (77.3 KiB)

desktop finder window with odd file-like icon and spawned folders bug_report_file_create_bug.png

totaam commented 10 years ago

2014-08-14 02:15:49: totaam changed status from new to closed

totaam commented 10 years ago

2014-08-14 02:15:49: totaam changed resolution from * to worksforme*

totaam commented 10 years ago

2014-08-14 02:15:49: totaam commented


An icon with the name corresponding to the title of the saved bug report appears on the desktop, but clicking on it, rather than "opening" it, results in the creation of a folder with all the information (and the icon remains) (..) [[BR]] That's what the Archive Utility does on OSX when you double click on a ZIP file. r7277 forces the .zip file extension, which may help clear things up. [[BR]] Meanwhile, the client still outputs the following warnings: (..) [[BR]] As I said, this is just a harmless warning from GTK.

I can't see any problems here, closing.