GNOME Bugzilla – Bug 645117
If I using Yelp gecko based version, Orca Yelp application-specific preference file producing a traceback error message
Last modified: 2011-03-20 18:34:01 UTC
Created attachment 183700 [details] Debug file with show the traceback error message Dear Developers, In my Lucid system I using Yelp gecko based version. If I create an Orca application-specific preference file for yelp, and if I manual run the preference file, I see following traceback error message: Traceback (most recent call last):
+ Trace 226368
self._processObjectEvent(event)
_scriptManager.setActiveScript(script, reason)
_settingsManager.loadAppSettings(newScript)
module = __import__(name, globals(), locals(), [''])
orca.scripts.apps.yelp.script_settings.grabFocusOnAncestor = False
I attaching the debug.out file, and the created yelp.py file. In Orca-list I send following letter this problem related, because I see my machine some interesting issue with Yelp Gecko based version: "Hy, If I remove my .local/share/orca/app-settings/yelp*.py* files, and I want creating a new application preference file, if I click Ok button, preference window is not closing. The interesting think, preference file is stored, but if I try run manual the Python file, I see following traceback error message: hammera@hammera-laptop:~/.local/share/orca/app-settings$ python yelp.py >valami.txt Traceback (most recent call last): File "yelp.py", line 40, in <module> orca.scripts.toolkits.Gecko.script_settings.controlCaretNavigation = True AttributeError: 'module' object has no attribute 'scripts' I sending the stored yelp.py file. Anybody confirming this issues? You easy possible to reproduce application-specific preference dialog is not closing if remove Yelp specific app-settings files, simple launch Yelp, press Orca+Ctrl+Space key and click Ok button. If the traceback error or preference dialog related error is reproduced, I reporting this issue thursday. Owner related settings is right my home folder, and I using latest git master version with my Ubuntu Lucid system." Attila
Created attachment 183701 [details] This is my created Orca application preference file for Yelp
If I remove the application-specific preference file, the traceback error message happening too. Unfortunately, this problem resulting my system with I unable to read new help topics if I press a topics with Enter key. The grab focus on anchestor setting is not affect. I only possible read new topics if I doing some Tab and Shift+Tab key press. Attila
Created attachment 183703 [details] Debug file when I try reading new opened topics I setted the bug status with critical, hopefuly this is right. Because this traceback happening without application specific settings file, I attaching an another debug.out file with shows the Yelp usage trying if I opening new sections for Orca help. Attila
Created attachment 183733 [details] [review] proposed fix Does this solve it for you?
Lowering to 'major' given that this is only impacting one application Orca provides access to -- and Gecko-based Yelp is not part of GNOME 3.0.
Hy Joanie, Now, I see following traceback error message with debug.out file if I remove the .local/share/orca/applications/yelp.py* files and restart Orca with debug mode if Yelp is running: Traceback (most recent call last):
+ Trace 226383
So, I think nothing changed unfortunately. Very interesting, if I remove the Yelp specific applications files, the files again automaticaly created in my .local/share/orca/app-settings folder if I restart Orca. If I manual run the yelp.py file, I see following traceback error message: hammera@hammera-laptop:~/.local/share/orca/app-settings$ python yelp.py Traceback (most recent call last): File "yelp.py", line 28, in <module> orca.scripts.toolkits.Gecko.script_settings.controlCaretNavigation = True AttributeError: 'module' object has no attribute 'scripts' hammera@hammera-laptop:~/.local/share/orca/app-settings$ I will be attaching an another debug.out file, and the new automaticaly created settings file.
Created attachment 183778 [details] This is the automaticaly created yelp.py file in .local/share/orca/app-settings directory
Created attachment 183779 [details] This is the debug.out file with showing same traceback if the attached patch applied
Joanie, If I see right, unfortunately not only Yelp application-specific setting file producing this traceback error message. If I run manual the .local/share/orca/app-settings/Mozilla.py and Thunderbird.py file, I see same traceback error message with I copyed in terminal. I attaching this setting files, or report this Firefox/Thunderbird app-settings related issue with another bug? The simptomn is equals: If I remove this application setting files with my .local/share/orca/app-settings directory, the setting files automaticaly created without I request this, and the created setting files producing this prewious pasted traceback error message when I manual run the setting files. Attila
Comment on attachment 183733 [details] [review] proposed fix http://git.gnome.org/browse/orca/commit/?id=4e7a7f417aa364786d5df22abce12ac917ef6528
(In reply to comment #9) > If I run manual the .local/share/orca/app-settings/Mozilla.py and > Thunderbird.py file, I see same traceback error message with I copyed in > terminal. This is what we call a red herring. It sure looks related to this problem, but it not only is not related; it is not an actual problem. You see, you were never meant to manually run those files. They were meant to be read in as text files. That's why all of the settings -- even those without an import line -- still get correctly loaded and used. Regardless, we officially made it look like a python executable file and thus it should be executable without tracebacks. Therefore I opened and fixed bug 645241. Important: What the fix is is to write out the import line required to make the traceback go away. As a result, you will need to get into Gecko preferences and press OK. Then get into Thunderbird preferences and press OK. Then get into Yelp preferences and press OK. Then get into OpenOffice/LibreOffice prefs and press OK. This will cause each file to be re-written out. You should not have to change anything else as we are already correctly reading the preferences. Just open, ok, open, ok. Having done all that, you should find you don't get the tracebacks you were seeing.
Aha! I think I know what your problem is.... Orca has a feature for migrating users from the old settings (in .orca of your home dir) to the new settings (in .local/share/orca). And what that feature does is copy what's in the old location to the new location if the file is missing in the new location. Thus if you don't have a .orca, or if there are no "missing" files in .local/share/orca, there is no problem. And even if you do have a .orca or "missing" files in .local/share/orca, there is no problem as long as the contents of the files haven't changed. In this particular case, they have changed. In this particular case, the fix for the bug would result in a different line from what you are seeing. Your line is missing the 'yelp_v2' from my patch. In addition, Orca doesn't 'automatically create' app settings files. The fact that you have applied the patch and deleted your yelp.py* files and are still managing to get a yelp.py file which has been automatically created and which contains the wrong line suggests very strongly that you have a .orca with yelp preferences saved. So, what I need you to try is the following: 1. Pull master it has both the fix for this bug and the fix for the other issue you reported. 2. Remove all yelp.py* files. That means yelp.py and yelp.pyc from ~/.orca/app-settings and yelp.py and yelp.pyc from ~/.local/share/orca/app-settings. Nuke them all. :-) Or if you sometimes run an older version of Orca, temporarily move those yelp files from ~/.orca. We just need Orca from master to not find them until you generate new ones. 3. Restart Orca from master, get into yelp, get out of yelp. Be sure there is not a ~/.local/share/orca/app-settings/yelp.py* file. If there is, review step 2 and try again. 4. Back in yelp, get into Orca's preferences for yelp, press OK to write out the file, and verify that you now do have a yelp.py in ~/.local/share/orca/app-settings. 5. Look at the contents. You should notice the settings line now contains a 'yelp_v2' in the string. 6. (Optional) If you do use an older version of Orca, it is now save to put those yelp files back. Note that you will still see the tracebacks if you manually run the yelp.py, but again that's not a problem as you were never expected to run them manually in the first place and the settings still get loaded correctly. If it really bothers you, you can always add the missing import line yourself. I hope this makes sense. If you have questions, let me know. Otherwise I look forward to hearing your results. Thanks!!
Hy Joanie, Many thanks the fix. I forgot this migration feature, very sorry. I forgot remove my .orca folder with the home directory. I create again all application-specific preferences files (yelp, Firefox, Thunderbird, Soffice), and if I manual run this files, I not see any traceback error messages. Ofcourse I prewious updated Orca with latest git master version. With Gecko based Yelp related: When I choose an another topic for example with Orca help page, some time I unable to move the document with arrow keys after I opening the new topic, Orca not spokening lines, and helppage reading is not beginning automaticaly. If I remember right, this is a not Orca specific issue and not need fixing this problem in Orca. The grab focus on objects when navigating check box is default unchecked, I nothing change the default created settings file. I possible reading this situations with help topics contents when I press a Tab key and jump h key with the topic document heading level. Next comment I attaching a debug.out file with this problem related. If not need doing anythink this problem related, feel free you change the bugreport status with resolved, because traceback error messages is fixed. If I need reporting this problem with another bugreport because possible fixing this problem, I welcome doing this. Attila
Created attachment 183841 [details] Debug file with show topic reading related problem This is the debug.out file with I promise. I not changed any settings with Yelp related, I only created application-specific file. If need fixing this topic reading related problem with Yelpv2 script, I reporting this issue with another bugreport and possible setting this bugreport status to resolved if not need doing another works this bug related. Attila
(In reply to comment #13) > I forgot this migration feature, very sorry. I forgot remove my .orca folder > with the home directory. Hey, no worries. I had forgotten it too. :-) I just could not for the life of me figure out how you could be getting the results you were. Then suddenly the migration feature occurred to me. Anyhoo.... I'm glad those issues are solved. As for this one: > When I choose an another topic for example with Orca help page, some time I > unable to move the document with arrow keys after I opening the new topic, Orca > not spokening lines, and helppage reading is not beginning automaticaly. If I > remember right, this is a not Orca specific issue and not need fixing this > problem in Orca. My initial guess is that it is a Gecko issue. However, coincidentally, I am working on Yelp 3 support and am seeing a very similar issue there. And from what I've seen so far, the problem is that I cannot position an active cursor there while Yelp has focus. So maybe this is a general Yelp issue and not an Orca issue or a Gecko/WebKitGtk issue. But I don't know yet. So.... As you may have already seen, I just opened bug 645320 for the Gecko version of this issue and added you to the CC list. As for this original bug, I'm going to close it as FIXED. Thanks for the report and the testing!