Bugs item #1800011, was opened at 2007-09-21 18:10 Message generated for change (Settings changed) made by sborho You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=968354&aid=1800011&group_id=199155
Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None >Status: Closed Resolution: None Priority: 5 Private: No Submitted By: Ian Dees (undees) Assigned to: Nobody/Anonymous (nobody) Summary: Context menu items don't do anything Initial Comment: Hi. I see pretty icon overlays and a context menu, but the choices on it don't seem to do anything except briefly launching python.exe. Here's how I got here: 1) I installed the most recent release of the Python 2.4 distribution from ActiveState. 2) I installed the most recent versions of GTK+, PyGtk, PyCairo, and PyGObject linked from the TortoiseHg page. 3) I installed Mercurial stable snapshot 5b0b0834419c from source, using the compiler variable hack from selenic.com to force it to use VS.NET 2005. 4) I ran python tortoisehg.py from the tortoisehg-dev directory. Python complained of two missing modules (bdiff.pyd and mpatch.pyd), both of which are present in my Lib\site-packages\mercurial directory. 5) I copied the two .pyd files into tortoisehg-dev and tried again. This time, the install worked, so I rebooted Windows and moved on. >From a command prompt, I can go to the tortoisehg-dev folder and type the >following: hgproc --command log --root "L:\MyProject" A window pops up with my project's history, as expected. But when I go to L:\ in Explorer, right-click on MyProject, and select "Revision history," nothing much happens. python.exe launches briefly, but then disappears again. In a separate command window, I launched the win32traceutil script and watched what happened when I repeated the right-click / Revision history choice. I got the trace you see in the attached log (user names and project names redacted). Is there a config setting I'm missing? Thanks in advance for any advice you might have. Sincerely, Ian ---------------------------------------------------------------------- Comment By: Ian Dees (undees) Date: 2007-10-09 15:36 Message: Logged In: YES user_id=123184 Originator: YES Thanks for the response. The SourceForge notification thing has bitten me, too -- even in some cases where I know I had notification set. Several times I've had to double-check my notification settings to make sure I was still subscribed to all my trackers. On the topic of DLL versions, I think a lot of these problems will go away with the installer, because there will be much more control over paths and versions. But sure, if you're going to put up a FAQ, I'd be happy to contribute a list of what worked for me to get TortoiseHg running. ---------------------------------------------------------------------- Comment By: TK Soh (tksoh) Date: 2007-10-09 07:44 Message: Logged In: YES user_id=411637 Originator: NO Thanks for taking time to debug this. This is good information, so please don't worry about closing it. I believe someone may find it useful too. I'd also like to compile a FAQ someday, so maybe this can take up a place in it. Better still, perhaps you can help put together a summary on your finding. P/s: sorry for this late reply. I was expecting SF to send me a notification when a bug was filed. Obviously it doesn't do that :( ---------------------------------------------------------------------- Comment By: Ian Dees (undees) Date: 2007-09-21 20:44 Message: Logged In: YES user_id=123184 Originator: YES Last message today, I promise! The short version: I have a workaround for now. The long version: I changed hgproc.bat to run "start" instead of "python hgproc.py", so I could see what was going on. I tried launching Python in _that_ console. I got the error, but at least this time I could poke around with PATH, PYTHONPATH, sys.path, and so on. I didn't see anything obvious that would indicate a missing library. Since I had already tried uninstalling the three GTK-related Python libraries and replacing them with older versions, I tried the next big rollback: GTK+. I uninstalled the bundled Glade/GTK+ linked from the TortoiseHg site, and instead installed a copy of 2.10 linked to from the GIMP Win32 page. I then had to modify _that_ installation by replacing its out-of-date iconv.dll with a recent GNU version (has anyone else grown to hate scripts that require libiconv_set_relocation_prefix?). For good measure, I renamed Ruby's and Tcl's copies of the DLL as well). For some strange reason, one of the libraries still had an undocumented dependency on libglade-2.0.dll. So I directly downloaded just that one binary from the GladeWin32 project, and put it into GTK's bin directory. And now it works. Status, history, diffs, reverting, everything I've tried so far. I'm not sure what to do with this bug entry. The fact that I have a working solution would point toward closing the bug. But the multiple library incompatibilities I encountered would point toward making a change to the project somehow: either bundling the requisite DLLs with TortoiseHg, or providing alternative links on the installation page. ---------------------------------------------------------------------- Comment By: Ian Dees (undees) Date: 2007-09-21 19:20 Message: Logged In: YES user_id=123184 Originator: YES More information: since the error that brought things to a halt in this trace was a library load, I tried importing gtk under a variety of situations. "import gtk" works fine from python.exe running in a command prompt. Also, if I put "import gtk" into hgproc.py and run "python hgproc.py" using subprocess.Popen(), it still works. But doing the exact same thing (calling hgproc.py using Popen) from contextmenu.py fails with the same old error message about not being able to find _gobject.pyd. Curiously enough, "import gtk" seems to run without error if I paste it into contextmenu.py. So the issue doesn't seem to be the shell extension by itself, or external processes by themselves, but rather the combination of the two. Could there be an environment/path/PYTHONPATH issue here? If the shell extension runs in the context of explorer.exe, does it get all the environment settings it needs to run GTK-based Python apps? --Ian ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=968354&aid=1800011&group_id=199155 ------------------------------------------------------------------------------ Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H _______________________________________________ Tortoisehg-develop mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/tortoisehg-develop
